quest struct
0x0	4	
0x4	4	
0x8	4	
0xC	4	p->sender
0x10	4	p->reciever
0x14	4	
0x18	2	item ID
0x1A	2	
0x1C	4	


802C3740
ADDIU	SP,SP,FFB8
SW	S3,0020 (SP)
OR	S3,A1,R0
SW	RA,002C (SP)
SW	S5,0028 (SP)
SW	S4,0024 (SP)
SW	S2,001C (SP)
SW	S1,0018 (SP)
SW	S0,0014 (SP)
LW	T6,0178 (A0)
ADDIU	T7,R0,FFFF
ADDIU	S0,A0,020C
LW	V0,0000 (T6)
OR	S1,R0,R0
ADDIU	S5,R0,0023
LW	S2,0174 (V0)
SW	T7,0030 (SP)
ADDIU	S4,R0,0001
BEQL	S2,R0,802C37D4
LW	V0,0030 (SP)
LW	T8,0008 (S0)
BEQL	T8,R0,802C37C8
ADDIU	S1,S1,0001
BNE	S3,R0,802C37AC
ADDIU	A1,S0,0010
BEQ	R0,R0,802C37AC
ADDIU	A1,S0,001C
JAL	800A6A6C
OR	A0,S2,R0
BNEL	V0,S4,802C37C8
ADDIU	S1,S1,0001
BEQ	R0,R0,802C37D0
SW	S1,0030 (SP)
ADDIU	S1,S1,0001
BNE	S1,S5,802C3790
ADDIU	S0,S0,0030
LW	V0,0030 (SP)
LW	RA,002C (SP)
LW	S0,0014 (SP)
LW	S1,0018 (SP)
LW	S2,001C (SP)
LW	S3,0020 (SP)
LW	S4,0024 (SP)
LW	S5,0028 (SP)
JR	RA
ADDIU	SP,SP,0048

802C37F8
ADDIU	SP,SP,FFB8
SW	RA,0034 (SP)
SW	S6,0030 (SP)
SW	S5,002C (SP)
SW	S4,0028 (SP)
SW	S3,0024 (SP)
SW	S2,0020 (SP)
SW	S1,001C (SP)
SW	S0,0018 (SP)
LW	T6,0178 (A0)
ADDIU	T8,R0,FFFF
LUI	S4,8013
LW	T7,0000 (T6)
ADDIU	S0,A0,020C
LW	S4,6FD8 (S4)
LW	S3,0174 (T7)
SW	T8,003C (SP)
OR	S1,R0,R0
BEQ	S3,R0,802C38A8
ADDIU	S6,R0,0023
ADDIU	S5,R0,0001
ADDIU	S2,R0,0001
LW	V0,0008 (S0)
BEQL	V0,R0,802C38A0
ADDIU	S1,S1,0001
LW	T9,0000 (V0)
OR	A0,S3,R0
SLL	T0,T9,0xD
SRL	T1,T0,0x1F
BNEL	S5,T1,802C38A0
ADDIU	S1,S1,0001
JAL	800A6A6C
ADDIU	A1,S0,001C
BNE	V0,S2,802C389C
OR	A0,S4,R0
JAL	800B7A00
LW	A1,000C (S0)
BNEL	V0,S2,802C38A0
ADDIU	S1,S1,0001
BEQ	R0,R0,802C38A8
SW	S1,003C (SP)
ADDIU	S1,S1,0001
BNE	S1,S6,802C3850
ADDIU	S0,S0,0030
LW	V0,003C (SP)
LW	RA,0034 (SP)
LW	S0,0018 (SP)
LW	S1,001C (SP)
LW	S2,0020 (SP)
LW	S3,0024 (SP)
LW	S4,0028 (SP)
LW	S5,002C (SP)
LW	S6,0030 (SP)
JR	RA
ADDIU	SP,SP,0048

802C38D4
LW	T6,0000 (A0)
OR	V1,R0,R0
SLL	T7,T6,0x9
SRL	T8,T7,0x1C
BNEL	T8,R0,802C38F4
OR	V0,V1,R0
ADDIU	V1,R0,0001
OR	V0,V1,R0
JR	RA
NOP

802C38FC
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
LW	A2,0008 (A0)
LW	V0,0004 (A0)
OR	V1,R0,R0
BEQL	A2,R0,802C3940
OR	V0,V1,R0
BEQ	V0,R0,802C3930
NOP
JALR	RA,V0
OR	A0,A2,R0
BEQ	R0,R0,802C393C
OR	V1,V0,R0
JAL	802C38D4
OR	A0,A2,R0
OR	V1,V0,R0
OR	V0,V1,R0
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C3950
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
LW	A1,0008 (A0)
OR	V1,R0,R0
BEQL	A1,R0,802C3978
OR	V0,V1,R0
JAL	800BAAA4
OR	A0,A1,R0
OR	V1,V0,R0
OR	V0,V1,R0
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C3988
ADDIU	SP,SP,FFC0
SW	S6,002C (SP)
OR	S6,A0,R0
SW	RA,0034 (SP)
SW	S7,0030 (SP)
SW	S5,0028 (SP)
SW	S4,0024 (SP)
SW	S3,0020 (SP)
SW	S2,001C (SP)
SW	S1,0018 (SP)
SW	S0,0014 (SP)
ADDIU	T6,R0,FFFF
SW	T6,003C (SP)
LW	T7,0178 (S6)
ADDIU	S1,S6,020C
OR	S2,R0,R0
LW	V0,0000 (T7)
OR	S0,R0,R0
ADDIU	S5,R0,0023
LW	S7,0174 (V0)
ADDIU	S4,R0,0001
ADDIU	S3,R0,0001
BEQL	S7,R0,802C3A58
LW	V0,003C (SP)
LW	T8,08A0 (S6)
SLT	AT,S2,T8
BEQL	AT,R0,802C3A58
LW	V0,003C (SP)
LW	V0,0008 (S1)
BEQL	V0,R0,802C3A4C
ADDIU	S0,S0,0001
LW	T9,0000 (V0)
SRL	T0,T9,0x1E
BNEL	S4,T0,802C3A48
ADDIU	S2,S2,0001
LW	T1,0024 (V0)
OR	A0,S7,R0
SLL	T2,T1,0x15
SRA	T3,T2,0x1D
BNEL	S3,T3,802C3A48
ADDIU	S2,S2,0001
JAL	800A6A6C
ADDIU	A1,V0,0028
BNEL	V0,S3,802C3A48
ADDIU	S2,S2,0001
BEQ	R0,R0,802C3A54
SW	S0,003C (SP)
ADDIU	S2,S2,0001
ADDIU	S0,S0,0001
BNE	S0,S5,802C39E8
ADDIU	S1,S1,0030
LW	V0,003C (SP)
LW	RA,0034 (SP)
LW	S0,0014 (SP)
LW	S1,0018 (SP)
LW	S2,001C (SP)
LW	S3,0020 (SP)
LW	S4,0024 (SP)
LW	S5,0028 (SP)
LW	S6,002C (SP)
LW	S7,0030 (SP)
JR	RA
ADDIU	SP,SP,0040

802C3A84
LW	T6,0178 (A0)
ADDIU	AT,R0,0003
OR	V1,R0,R0
LW	T7,0000 (T6)
LW	T8,0178 (T7)
LW	T9,0020 (T8)
SRL	T0,T9,0x1E
BEQL	T0,AT,802C3AB0
OR	V0,V1,R0
ADDIU	V1,R0,0001
OR	V0,V1,R0
JR	RA
NOP

802C3AB8
BEQ	A0,R0,802C3AF8
ADDIU	V1,R0,FFFF
LW	V0,0008 (A0)
BEQL	V0,R0,802C3AFC
OR	V0,V1,R0
LW	A2,002C (A0)
BLTZ	A2,802C3AF8
SLTI	AT,A2,0005
BEQL	AT,R0,802C3AFC
OR	V0,V1,R0
LW	T6,0000 (V0)
ADDIU	AT,R0,0001
SRL	T7,T6,0x1E
BNEL	T7,AT,802C3AFC
OR	V0,V1,R0
OR	V1,A2,R0
OR	V0,V1,R0
JR	RA
NOP

802C3B04
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
SW	A0,0018 (SP)
SW	A2,0020 (SP)
JAL	802C3AB8
OR	A0,A1,R0
BLTZ	V0,802C3B38
SLTI	AT,V0,0005
BEQ	AT,R0,802C3B38
LW	T7,0018 (SP)
LBU	T6,0023 (SP)
ADDU	T8,T7,V0
SB	T6,0000 (T8)
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C3B48
ADDIU	SP,SP,FFE0
SW	RA,0014 (SP)
SW	A1,0024 (SP)
JAL	802C3AB8
SB	R0,001B (SP)
BLTZ	V0,802C3B78
LBU	V1,001B (SP)
SLTI	AT,V0,0005
BEQ	AT,R0,802C3B78
LW	T6,0024 (SP)
ADDU	T7,T6,V0
LBU	V1,0000 (T7)
OR	V0,V1,R0
LW	RA,0014 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C3B8C
	accepts: A0=p->text ID(?)
BEQ	A0,R0,802C3BAC	;FAIL if A0 NULL
OR	V1,R0,R0	;V1=FALSE
LW	T6,0000 (A0)
ADDIU	AT,R0,0003
SRL	T7,T6,0x1E	;T7=T6/40000000
BNEL	T7,AT,802C3BB0	;branch if not 3
OR	V0,V1,R0
ADDIU	V1,R0,0001	;V1=TRUE
//802C3BAC:	return
OR	V0,V1,R0	;V0=V1: return status
JR	RA
NOP

802C3BB8
ADDIU	SP,SP,FFA0
SW	S6,0030 (SP)
OR	S6,A0,R0
SW	RA,0034 (SP)
SW	S5,002C (SP)
SW	S4,0028 (SP)
SW	S3,0024 (SP)
SW	S2,0020 (SP)
SW	S1,001C (SP)
SW	S0,0018 (SP)
LW	T6,0178 (S6)
LUI	S4,8013
ADDIU	T8,R0,FFFF
LW	T7,0000 (T6)
LW	S4,6FD8 (S4)
LUI	S1,8013
LW	S5,0174 (T7)
SW	T8,0038 (SP)
ADDIU	S1,S1,0DB8
SW	R0,01F8 (S6)
BEQ	A1,R0,802C3C30
ADDIU	A2,S5,04EC
//802C3C10:
ADDIU	S3,R0,0001
BEQ	A1,S3,802C3C84
OR	S0,R0,R0
ADDIU	AT,R0,0002
BEQ	A1,AT,802C3CC0
NOP
BEQ	R0,R0,802C3D08
ADDIU	V0,S6,01C0
//802C3C30:
OR	S0,R0,R0	;S0=0	init.count
ADDIU	S1,S4,0040
ADDIU	S3,R0,0001	;S3=1: test for TRUE
ADDIU	S2,R0,000F	;S2=F: total loops
//802C3C40:
JAL	802C3B8C
OR	A0,S1,R0
BNE	V0,S3,802C3C70	;branch if returned FALSE
SLL	T9,S0,0x1
ADDU	T0,S4,T9
LHU	T1,0014 (T0)
BNE	T1,R0,802C3C70
ADDIU	V0,S6,01C0
SW	S0,0014 (V0)
SW	S0,0038 (SP)
BEQ	R0,R0,802C3D08
SW	S1,01F8 (S6)
//802C3C70:
ADDIU	S0,S0,0001	;S0++	count++
BNE	S0,S2,802C3C40	;loop 15 times
ADDIU	S1,S1,0024
BEQ	R0,R0,802C3D08
ADDIU	V0,S6,01C0
//802C3C84:
ADDIU	S1,S4,025C
ADDIU	S2,R0,0005
//802C3C8C:
JAL	802C3B8C
OR	A0,S1,R0
BNEL	V0,S3,802C3CB0
ADDIU	S0,S0,0001
SW	S0,0038 (SP)
SW	S1,01F8 (S6)
BEQ	R0,R0,802C3D08
ADDIU	V0,S6,01C0
//802C3CAC:
ADDIU	S0,S0,0001	;S0++	count++
BNE	S0,S2,802C3C8C
ADDIU	S1,S1,0050
BEQ	R0,R0,802C3D08
ADDIU	V0,S6,01C0
//802C3CC0:
JAL	802C3B8C
OR	A0,A2,R0
BNE	V0,S3,802C3D04
OR	S0,R0,R0	;S0=0	init.count
ADDIU	S2,R0,000F	;S2=F: total loops
OR	A0,S1,R0
JAL	800A6A6C
OR	A1,S5,R0
BNEL	V0,S3,802C3CFC
ADDIU	S0,S0,0001
SW	S0,0038 (SP)
ADDIU	T2,S1,04EC
BEQ	R0,R0,802C3D04
SW	T2,01F8 (S6)
//802C3CF8:
ADDIU	S0,S0,0001	;S0++	count++
BNE	S0,S2,802C3CD4	;loop 15 times
ADDIU	S1,S1,0528
//802C3D04:
ADDIU	V0,S6,01C0
LW	T3,0038 (SP)
SW	T3,0034 (V0)
LW	RA,0034 (SP)
LW	S0,0018 (SP)
LW	S1,001C (SP)
LW	S2,0020 (SP)
LW	S3,0024 (SP)
LW	S4,0028 (SP)
LW	S5,002C (SP)
LW	S6,0030 (SP)
JR	RA
ADDIU	SP,SP,0060

802C3D38
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
OR	A2,A0,R0
LW	T6,0178 (A2)
ADDIU	A1,A2,01C0
LW	T7,0000 (T6)
LW	A0,0178 (T7)
JAL	800BA7E8
ADDIU	A0,A0,0020
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C3D6C
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
OR	A2,A0,R0
LW	T6,0178 (A2)
ADDIU	A0,A2,01C0
LW	T7,0000 (T6)
LW	A1,0178 (T7)
JAL	800BA7E8
ADDIU	A1,A1,0020
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C3DA0
ADDIU	SP,SP,FFD0
SW	RA,0014 (SP)
SW	A0,0030 (SP)
SW	A1,0034 (SP)
LUI	T7,8013
LBU	T7,6EA3 (T7)
LUI	AT,2000
ORI	AT,AT,0002
ADDIU	T6,R0,0001
ADDU	T8,T7,AT
SW	T6,001C (SP)
JAL	800951C0
SW	T8,0024 (SP)
BNEL	V0,R0,802C3DF8
LW	T9,001C (SP)
JAL	8007D318
LW	A0,0024 (SP)
ADDIU	AT,R0,0001
BNEL	V0,AT,802C3DF8
LW	T9,001C (SP)
SW	R0,001C (SP)
LW	T9,001C (SP)
LUI	A1,802D
SLL	T0,T9,0x2
ADDU	A1,A1,T0
LW	A1,7964 (A1)
LW	A0,0004 (A1)
JAL	800BC414
SW	A1,002C (SP)
LW	A1,002C (SP)
SLL	T2,V0,0x2
LW	A2,0030 (SP)
LW	T1,0000 (A1)
ADDU	T3,T1,T2
LW	T4,0000 (T3)
SLL	T6,T4,0x2
ADDU	V1,A1,T6
SW	T4,0000 (A2)
LW	T7,0008 (V1)
SW	T7,0028 (SP)
JAL	800BC414
LW	A0,0014 (V1)
LW	T8,0028 (SP)
SLL	T9,V0,0x2
LW	T2,0034 (SP)
ADDU	T0,T8,T9
LW	T1,0000 (T0)
SW	T1,0000 (T2)
LW	RA,0014 (SP)
JR	RA
ADDIU	SP,SP,0030

802C3E6C
ADDIU	SP,SP,FFC0
SW	S4,0028 (SP)
SW	S3,0024 (SP)
OR	S3,A0,R0
OR	S4,A1,R0
SW	RA,002C (SP)
SW	S2,0020 (SP)
SW	S1,001C (SP)
SW	S0,0018 (SP)
LUI	S0,8013
ADDIU	T6,R0,FFFF
ADDIU	S0,S0,7000
SW	T6,0034 (SP)
OR	S1,R0,R0
ADDIU	S2,R0,000F
JAL	800BAA7C
ADDIU	A0,S0,0020
BNEL	V0,R0,802C3EE4
ADDIU	S1,S1,0001
LW	T7,0020 (S0)
SRL	T8,T7,0x1E
BNEL	S3,T8,802C3EE4
ADDIU	S1,S1,0001
LBU	T9,0020 (S0)
ANDI	T0,T9,003F
BNEL	S4,T0,802C3EE4
ADDIU	S1,S1,0001
BEQ	R0,R0,802C3EEC
SW	S1,0034 (SP)
ADDIU	S1,S1,0001
BNE	S1,S2,802C3EA8
ADDIU	S0,S0,0038
LW	V0,0034 (SP)
LW	RA,002C (SP)
LW	S0,0018 (SP)
LW	S1,001C (SP)
LW	S2,0020 (SP)
LW	S3,0024 (SP)
LW	S4,0028 (SP)
JR	RA
ADDIU	SP,SP,0040

802C3F10
ADDIU	SP,SP,FFD0
SW	RA,0014 (SP)
SW	A1,0034 (SP)
SW	A2,0038 (SP)
SW	A3,003C (SP)
ADDIU	T6,R0,FFFF
ADDIU	AT,R0,0002
OR	T0,R0,R0
BNE	A0,AT,802C40C4
SW	T6,001C (SP)
LW	A0,0034 (SP)
JAL	800BB5DC
SW	R0,0024 (SP)
ADDIU	A0,R0,FFFF
BNE	V0,A0,802C41D0
LW	T0,0024 (SP)
LW	T7,0034 (SP)
SLTIU	AT,T7,0007
BEQ	AT,R0,802C41D0
SLL	T7,T7,0x2
LUI	AT,802D
ADDU	AT,AT,T7
LW	T7,7A80 (AT)
JR	T7
NOP
BEQ	R0,R0,802C41D0
ADDIU	T0,R0,0001
BEQ	R0,R0,802C41D0
ADDIU	T0,R0,0001
LUI	V1,8013
LBU	V1,6FC1 (V1)
ADDIU	AT,R0,0001
BEQ	V1,AT,802C3FC8
OR	V0,V1,R0
ADDIU	AT,R0,0002
BNE	V1,AT,802C3FB0
LUI	T8,8013
LBU	T8,6FBF (T8)
SLTI	AT,T8,0012
BNE	AT,R0,802C3FC8
ADDIU	AT,R0,000C
BNE	V0,AT,802C41D0
LUI	T9,8013
LBU	T9,6FBF (T9)
SLTI	AT,T9,0019
BNE	AT,R0,802C41D0
LUI	V1,8013
LBU	V1,6FBE (V1)
SLTI	AT,V1,0008
BNE	AT,R0,802C41D0
SLTI	AT,V1,0011
BEQL	AT,R0,802C41D4
OR	V0,T0,R0
BEQ	R0,R0,802C41D0
ADDIU	T0,R0,0001
LUI	V1,8013
LBU	V0,6FC1 (V1)
ADDIU	AT,R0,0002
LUI	T1,8013
BNEL	V0,AT,802C4014
SLTI	AT,V0,0003
LBU	T1,6FBF (T1)
SLTI	AT,T1,0019
BEQ	AT,R0,802C4024
SLTI	AT,V0,0003
BNE	AT,R0,802C41D0
SLTI	AT,V0,0009
BEQL	AT,R0,802C41D4
OR	V0,T0,R0
LW	A0,003C (SP)
LW	A1,0040 (SP)
JAL	800BB67C
SW	T0,0024 (SP)
SLTI	AT,V0,0004
BNE	AT,R0,802C41D0
LW	T0,0024 (SP)
LW	A0,003C (SP)
LW	A1,0040 (SP)
JAL	800BB658
SW	T0,0024 (SP)
SLTI	AT,V0,0015
BEQ	AT,R0,802C41D0
LW	T0,0024 (SP)
BEQ	R0,R0,802C41D0
ADDIU	T0,R0,0001
BEQ	R0,R0,802C41D0
ADDIU	T0,R0,0001
LUI	V1,8013
LBU	V1,6FC1 (V1)
SLTI	AT,V1,0003
BNE	AT,R0,802C4088
OR	V0,V1,R0
SLTI	AT,V1,000B
BNE	AT,R0,802C40A4
ADDIU	AT,R0,000B
BNE	V0,AT,802C41D0
LUI	T2,8013
LBU	T2,6FBF (T2)
SLTI	AT,T2,001D
BEQL	AT,R0,802C41D4
OR	V0,T0,R0
BEQ	R0,R0,802C41D0
ADDIU	T0,R0,0001
JAL	800951C0
SW	T0,0024 (SP)
BNE	V0,R0,802C41D0
LW	T0,0024 (SP)
BEQ	R0,R0,802C41D0
ADDIU	T0,R0,0001
BNE	A0,R0,802C41C4
ADDIU	AT,R0,0001
LW	T3,0038 (SP)
LUI	A0,8013
ADDIU	A0,A0,0DB8
BEQ	T3,R0,802C40F4
ADDIU	A2,R0,000F
LHU	A1,0000 (T3)
JAL	800A7C30
SW	T0,0024 (SP)
LW	T0,0024 (SP)
SW	V0,001C (SP)
LW	T4,0034 (SP)
ADDIU	AT,R0,0001
OR	A0,R0,R0
BEQ	T4,AT,802C411C
ADDIU	A1,R0,0001
ADDIU	AT,R0,0002
BEQ	T4,AT,802C4170
OR	A0,R0,R0
BEQ	R0,R0,802C41D0
ADDIU	T0,R0,0001
JAL	802C3E6C
SW	T0,0024 (SP)
ADDIU	A0,R0,0001
JAL	800BABE8
SW	V0,0020 (SP)
ADDIU	A0,R0,FFFF
LW	V1,0020 (SP)
BNE	V0,A0,802C41D0
LW	T0,0024 (SP)
BEQ	V1,A0,802C414C
LW	T5,001C (SP)
BNE	V1,T5,802C41D0
LUI	A0,8013
LW	A0,6FD8 (A0)
SW	T0,0024 (SP)
JAL	800A69C8	;V0=TRUE if short at A0 isn't an actor ID
ADDIU	A0,A0,0A7A
BNE	V0,R0,802C41D0
LW	T0,0024 (SP)
BEQ	R0,R0,802C41D0
ADDIU	T0,R0,0001
ADDIU	A1,R0,0002
JAL	802C3E6C
SW	T0,0024 (SP)
ADDIU	A0,R0,0002
JAL	800BABE8
SW	V0,0020 (SP)
ADDIU	A0,R0,FFFF
LW	V1,0020 (SP)
BNE	V0,A0,802C41D0
LW	T0,0024 (SP)
BEQ	V1,A0,802C41A4
LW	T6,001C (SP)
BNE	V1,T6,802C41D0
LUI	A0,8013
ADDIU	A0,A0,5B10
JAL	800A69C8	;V0=TRUE if short at A0 isn't an actor ID
SW	T0,0024 (SP)
BNE	V0,R0,802C41D0
LW	T0,0024 (SP)
BEQ	R0,R0,802C41D0
ADDIU	T0,R0,0001
BNEL	A0,AT,802C41D4
OR	V0,T0,R0
ADDIU	T0,R0,0001
OR	V0,T0,R0
LW	RA,0014 (SP)
ADDIU	SP,SP,0030
JR	RA
NOP

802C41E4
ADDIU	SP,SP,FFB0
SW	S0,0020 (SP)
OR	S0,A0,R0
SW	RA,0024 (SP)
LW	T6,0178 (S0)
OR	A0,S0,R0
LW	T7,0000 (T6)
LW	T8,0174 (T7)
SW	R0,0040 (SP)
JAL	802C3A84
SW	T8,004C (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C4278
NOP
JAL	802C3D6C
OR	A0,S0,R0
ADDIU	V0,S0,01C0
LW	A1,0000 (V0)
SW	V0,002C (SP)
OR	A0,S0,R0
JAL	802C3BB8
SRL	A1,A1,0x1E
LW	V0,002C (SP)
ADDIU	T0,R0,0001
LW	T9,0038 (V0)
BEQL	T9,R0,802C425C
LW	T1,0000 (V0)
BEQ	R0,R0,802C432C
SW	T0,0040 (SP)
LW	T1,0000 (V0)
SRL	T2,T1,0x1E
BNEL	T2,R0,802C4330
LW	V0,0040 (SP)
JAL	802C3D38
OR	A0,S0,R0
BEQ	R0,R0,802C4330
LW	V0,0040 (SP)
JAL	800BC414
ADDIU	A0,R0,0004
BEQ	V0,R0,802C432C
ADDIU	A0,SP,0038
JAL	802C3DA0
ADDIU	A1,SP,0034
LW	A2,004C (SP)
LW	A0,0038 (SP)
LW	A1,0034 (SP)
LBU	T3,04E2 (A2)
LBU	A3,04E1 (A2)
JAL	802C3F10
SW	T3,0010 (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C432C
LW	T5,0038 (SP)
ADDIU	V0,S0,01C0
LBU	T8,0000 (V0)
SLL	T7,T5,0x6
OR	A0,S0,R0
ANDI	T9,T8,FF3F
OR	T4,T7,T9
SB	T4,0000 (V0)
LW	T2,0034 (SP)
ANDI	T5,T4,00C0
ANDI	T3,T2,003F
OR	T6,T3,T5
SB	T6,0000 (V0)
LW	A1,0000 (V0)
SW	V0,002C (SP)
JAL	802C3BB8
SRL	A1,A1,0x1E
LW	V0,002C (SP)
ADDIU	T7,R0,0001
LW	T8,0038 (V0)
BEQL	T8,R0,802C4318
LW	T9,0000 (V0)
BEQ	R0,R0,802C432C
SW	T7,0040 (SP)
LW	T9,0000 (V0)
SRL	T0,T9,0x1E
BNEL	T0,R0,802C4330
LW	V0,0040 (SP)
JAL	802C3D38
OR	A0,S0,R0
LW	V0,0040 (SP)
LW	RA,0024 (SP)
LW	S0,0020 (SP)
ADDIU	SP,SP,0050
JR	RA
NOP

802C4344	copy random quest item to A0
	accepts: A0=p->target for quest item
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
SW	A0,0018 (SP)	;SP+18=A0: p->target
JAL	8002C9AC	;V0=random number (0-1)
NOP
LUI	AT,4120
MTC1	AT,F4		;F4=AT: 10.0	[41200000]
LUI	T9,802D
LW	T0,0018 (SP)	;T0=SP+18: p->target
MUL.S	F6,F0,F4	;F6=rand*10.0
TRUNC.W.S	F8,F6
MFC1	T7,F8		;T7=F8: random value from 0-9
NOP
SLL	T8,T7,0x1	;T8=T7*2: T7->offset
ADDU	T9,T9,T8
LHU	T9,77C0 (T9)	;T9=802C77C0+offset: quest item
SH	T9,0000 (T0)	;T9->T0+0: quest item->
LW	RA,0014 (SP)
JR	RA
ADDIU	SP,SP,0018

802C4394	V0=random reward item
	accepts: A0=p->target for quest item, A1=
ADDIU	SP,SP,FFD8
SW	A1,002C (SP)	;SP+2C=A1: 
OR	A1,A0,R0	;A1=A0: p->target
SW	RA,0024 (SP)
SW	A0,0028 (SP)	;SP+28=A0: p->target
ADDIU	T6,R0,0001
ADDIU	T7,R0,0002
ADDIU	T8,R0,0008
SW	T8,0018 (SP)	;SP+18=8: 
SW	T7,0014 (SP)	;SP+14=2: 
SW	T6,0010 (SP)	;SP+10=1: 
OR	A0,R0,R0	;A0=0
ADDIU	A2,R0,0001	;A2=1
JAL	800BFCF0	;V0=random funiture, stationary, clothes, carpet, wallpaper
ADDIU	A3,SP,002E	;A3=SP+2E: p->[A1]
LW	RA,0024 (SP)
ADDIU	SP,SP,0028
JR	RA
NOP

802C43E0
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
OR	A3,A1,R0
ADDIU	AT,R0,0003
BNEL	A0,AT,802C4424
LW	RA,0014 (SP)
LBU	A0,04E1 (A2)
LBU	A1,04E2 (A2)
JAL	800BB634
SW	A3,001C (SP)
LW	A3,001C (SP)
ADDIU	T6,V0,0004
ADDIU	T7,R0,0004
SW	V0,0004 (A3)
SW	T6,0000 (A3)
SW	T7,0008 (A3)
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C4430
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
OR	A3,A0,R0
LW	V0,01C0 (A3)
ADDIU	AT,R0,0001
SRL	V0,V0,0x1E
BEQL	V0,R0,802C4484
LW	RA,0014 (SP)
BEQ	V0,AT,802C4480
ADDIU	AT,R0,0002
BNEL	V0,AT,802C4484
LW	RA,0014 (SP)
LW	T6,0178 (A3)
ADDIU	V0,A3,01C0
LBU	A0,0000 (V0)
LW	T7,0000 (T6)
ADDIU	A1,V0,0040
ANDI	A0,A0,003F
JAL	802C43E0
LW	A2,0174 (T7)
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C4490
ADDIU	SP,SP,FF70
LUI	A2,8013
ADDIU	A2,A2,6EA0
SW	RA,002C (SP)
SW	S2,0028 (SP)
SW	S1,0024 (SP)
SW	S0,0020 (SP)
SW	A0,0090 (SP)
SW	A1,0094 (SP)
LW	T6,0090 (SP)
LW	T0,0138 (A2)
LW	S2,0090 (SP)
LW	T7,0178 (T6)
LW	T8,0000 (T7)
LW	V1,0174 (T8)
SW	V1,008C (SP)
LW	T9,01F0 (T6)
SW	T0,0044 (SP)
BNE	T9,R0,802C44E8
SW	T9,0048 (SP)
BEQ	R0,R0,802C481C	;return -4
ADDIU	V0,R0,FFFC
//802C44E8:
SW	V1,01CC (S2)	;V1->quest+C: set p->sender
LW	T1,0048 (SP)
ADDIU	S2,S2,01C0	;S2+=1C0: p->quest struct
LW	V0,0000 (T1)
SRL	T2,V0,0x1D
SLTIU	AT,T2,0006
BEQ	AT,R0,802C4694
SLL	T2,T2,0x2
LUI	AT,802D
ADDU	AT,AT,T2
LW	T2,7A9C (AT)
JR	T2
NOP
LW	A0,008C (SP)
ADDIU	T4,R0,0001
ADDIU	A1,R0,0001
LBU	A2,04E1 (A0)
LBU	A3,04E2 (A0)
JAL	800A7DA0
SW	T4,0010 (SP)
BNE	V0,R0,802C4548
SW	V0,0010 (S2)	;V0->S2+10: set p->receiver
BEQ	R0,R0,802C481C	;return -4
ADDIU	V0,R0,FFFC
//802C4548:
LW	T5,0048 (SP)
BEQ	R0,R0,802C4694
LW	V0,0000 (T5)
//802C4554:
ADDIU	S0,SP,0054
ADDIU	S1,SP,0084
//802C455C:
JAL	800A6978
OR	A0,S0,R0
ADDIU	S0,S0,000C
SLTU	AT,S0,S1
BNE	AT,R0,802C455C
NOP
LW	T7,0094 (SP)
ADDIU	S0,SP,0054
BEQ	T7,R0,802C45A0
ADDIU	S1,T7,0028
OR	A0,S0,R0
JAL	800A6A04
OR	A1,S1,R0
ADDIU	S0,S0,000C
ADDIU	T8,SP,0078
BNE	S0,T8,802C4584
ADDIU	S1,S1,000C
ADDIU	A0,SP,0078
JAL	800A6A04
LW	A1,008C (SP)
LW	T6,008C (SP)
ADDIU	T0,R0,0001
ADDIU	A0,SP,0054
LBU	A2,04E1 (T6)
LBU	A3,04E2 (T6)
SW	T0,0010 (SP)
JAL	800A7DA0
ADDIU	A1,R0,0004
BNE	V0,R0,802C45DC
SW	V0,0010 (S2)	;V0->S2+10: set p->receiver
BEQ	R0,R0,802C481C	;return -4
ADDIU	V0,R0,FFFC
ADDIU	T9,R0,0001
SB	T9,003C (S2)	;T9->S2+3C: 
LW	T1,0048 (SP)
BEQ	R0,R0,802C4694
LW	V0,0000 (T1)
LW	T2,0094 (SP)
LW	T4,008C (SP)
BEQ	T2,R0,802C4608
ADDIU	T3,T2,0028
BEQ	R0,R0,802C460C
SW	T3,0010 (S2)	;T3->S2+10: set p->receiver
//802C4608:
SW	T4,0010 (S2)	;T4->S2+10: set p->receiver
LW	T5,0048 (SP)
BEQ	R0,R0,802C4694
LW	V0,0000 (T5)
//802C4618:
LW	S0,0138 (A2)
ADDIU	S0,S0,0A7A
JAL	800A69C8	;V0=TRUE if short at A0 isn't an actor ID
OR	A0,S0,R0
BNE	V0,R0,802C4640
NOP
SW	S0,0010 (S2)	;S0->S2+10: set p->receiver
LW	T7,0048 (SP)
BEQ	R0,R0,802C4694
LW	V0,0000 (T7)
//802C4640:
BEQ	R0,R0,802C481C	;return -2
ADDIU	V0,R0,FFFE
//802C4648:
LUI	S0,8013
ADDIU	S0,S0,5B10
JAL	800A69C8	;V0=TRUE if short at A0 isn't an actor ID
OR	A0,S0,R0
BNE	V0,R0,802C4670
NOP
SW	S0,0010 (S2)	;S0->S2+10: set p->receiver
LW	T8,0048 (SP)
BEQ	R0,R0,802C4694
LW	V0,0000 (T8)
//802C4670:
BEQ	R0,R0,802C481C	;return -3
ADDIU	V0,R0,FFFD
//802C4678:
LW	T6,0090 (SP)
LW	T0,0178 (T6)
LW	T9,0000 (T0)
LW	T1,0174 (T9)
SW	T1,0010 (S2)	;T1->S2+10: set p->receiver
LW	T2,0048 (SP)
LW	V0,0000 (T2)
//802C4694:
SLL	T3,V0,0xE
SRL	T4,T3,0x1D
SLTIU	AT,T4,0006
BEQ	AT,R0,802C4730	;skip if not 0-5
SLL	T4,T4,0x2
LUI	AT,802C
ADDU	AT,AT,T4
LW	T4,7AB4 (AT)	;T4=802C7AB4+offset: pointer to handler
JR	T4
NOP
//802C46BC:	random quest item
JAL	802C4344	;copy random quest item to A0
ADDIU	A0,S2,0018	;A0=S2+18: p->quest item
BEQ	R0,R0,802C473C
LW	T1,0048 (SP)
//802C46CC:	2800 fruit
JAL	8008D6E0	;V0=random fruit?
NOP
BEQ	R0,R0,802C4738
SH	V0,0018 (S2)	;V0->S2+18: set quest item
//802C46DC:
LW	T5,008C (SP)
ADDIU	A0,S2,0018	;A0=S2+18: p->quest item
JAL	802C4394	;V0=random reward item
LHU	A1,0520 (T5)	;A1=T5+520: 
BEQ	R0,R0,802C473C
LW	T1,0048 (SP)
//802C46F4:
LW	T7,0048 (SP)	;T7=SP+48: p->
LHU	T8,0004 (T7)	;T8=T7+4: ID
BEQ	R0,R0,802C4738
SH	T8,0018 (S2)	;T8->S2+18: set quest item
//802C4704:	2400 clothing
LW	T6,0094 (SP)	;T6=SP+94: p->clothing
ADDIU	T9,R0,2401
BEQ	T6,R0,802C4720	;if NULL pointer, default to 2401
NOP
LHU	T0,0024 (T6)	;T0=T6+24: clothing ID
BEQ	R0,R0,802C4738
SH	T0,0018 (S2)	;T0->S2+18: set quest item
//802C4720:	default to ... (2401)
BEQ	R0,R0,802C4738
SH	T9,0018 (S2)	;2401->S2+18: set quest item
//802C4728:	no item
BEQ	R0,R0,802C4738
SH	R0,0018 (S2)	;0->S2+18: no quest item
//802C4730:	default
BEQ	R0,R0,802C481C	;return -4
ADDIU	V0,R0,FFFC
//802C4738:
LW	T1,0048 (SP)
ADDIU	AT,R0,0001
LW	A0,0044 (SP)
LW	T2,0000 (T1)
ADDIU	V1,R0,FFFF
SLL	T3,T2,0xD
SRL	T4,T3,0x1F	;T4=nonzero if T3 negative
BNEL	T4,AT,802C4788	;branch if not negative
SW	V1,0014 (S2)
JAL	800B8068
OR	A1,R0,R0
ADDIU	V1,R0,FFFF
BEQL	V0,V1,802C477C	;return if -1
SW	V1,0014 (S2)
BEQ	R0,R0,802C4788
SW	V0,0014 (S2)
//802C4778:	return -1
SW	V1,0014 (S2)	;-1 ->S2+14: 
BEQ	R0,R0,802C481C	;return -1
OR	V0,V1,R0
//802C4784:
SW	V1,0014 (S2)	;-1->quest+14: 
//802C4788:
LW	T5,0048 (SP)
ADDIU	S0,S2,0028	;S0=quest+28: 
OR	A0,S0,R0
LW	T7,0000 (T5)
LUI	A1,8013
SLL	T8,T7,0x3
SRL	T6,T8,0x1A
BEQL	T6,R0,802C47E0
LBU	T3,0001 (S2)
JAL	800D5D6C
ADDIU	A1,A1,6FBC
LW	T0,0048 (SP)
OR	A0,S0,R0
LW	A1,0000 (T0)
SLL	A1,A1,0x3
JAL	800D572C
SRL	A1,A1,0x1A
LBU	T1,0001 (S2)
ORI	T2,T1,0080
BEQ	R0,R0,802C47E8
SB	T2,0001 (S2)
//802C47DC:
LBU	T3,0001 (S2)
ANDI	T4,T3,FF7F
SB	T4,0001 (S2)
//802C47E8:
LW	T5,0048 (SP)
LBU	T1,0001 (S2)
LW	T7,0000 (T5)
ANDI	T2,T1,FF87
SLL	T8,T7,0x9
SRL	T6,T8,0x1C
SLL	T0,T6,0x3
ANDI	T9,T0,0078
OR	T3,T9,T2
SB	T3,0001 (S2)
JAL	802C4430
LW	A0,0090 (SP)
ADDIU	V0,R0,0001	;V0= TRUE
//802C481C:	return
LW	RA,002C (SP)
LW	S0,0020 (SP)
LW	S1,0024 (SP)
LW	S2,0028 (SP)
JR	RA
ADDIU	SP,SP,0090

802C4834
ADDIU	SP,SP,FFB0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
SW	A1,0054 (SP)
SW	A2,0058 (SP)
SW	A3,005C (SP)
LW	T6,0060 (SP)
ADDIU	AT,R0,FFFF
OR	V1,R0,R0
BEQ	T6,AT,802C49A8
SW	R0,0040 (SP)
SLL	T7,T6,0x2
SUBU	T7,T7,T6
SLL	T7,T7,0x4
ADDU	V0,S0,T7
LW	V1,0214 (V0)
ADDIU	A3,S0,01C0
LBU	T3,0000 (A3)
LW	T8,0000 (V1)
ADDIU	A0,V0,020C
ANDI	T4,T3,FF3F
SRL	T9,T8,0x1E
SLL	T2,T9,0x6
OR	T5,T2,T4
SB	T5,0000 (A3)
ADDIU	A1,S0,08CC
SW	A1,0028 (SP)
SW	R0,0038 (SP)
SW	A3,0030 (SP)
SW	A0,002C (SP)
JAL	802C3B48
SW	V1,0048 (SP)
LW	A0,0028 (SP)
LW	A3,0030 (SP)
LW	T0,0038 (SP)
BNE	V0,R0,802C48FC
OR	V1,V0,R0
SW	A0,0028 (SP)
JAL	8002C9AC	;V0=random number
SW	A3,0030 (SP)
LUI	AT,4000
MTC1	AT,F4
LW	A0,0028 (SP)
LW	A3,0030 (SP)
MUL.S	F6,F0,F4
TRUNC.W.S	F8,F6
MFC1	T0,F8
BEQ	R0,R0,802C4910
ADDIU	V0,T0,0001
SLTI	AT,V1,0003
BEQL	AT,R0,802C4910
ADDIU	V0,T0,0001
ADDIU	T0,V1,FFFF
ADDIU	V0,T0,0001
ANDI	A2,V0,00FF
SW	V0,0024 (SP)
LW	A1,002C (SP)
JAL	802C3B04
SW	A3,0030 (SP)
LW	V0,0024 (SP)
ADDIU	AT,R0,0001
LW	A3,0030 (SP)
BEQ	V0,AT,802C494C
LW	T7,0048 (SP)
LW	T8,0000 (T7)
SLL	T9,T8,0x9
SRL	T1,T9,0x1C
ADDIU	T3,T1,FFFF
SW	T3,0040 (SP)
LW	T2,0040 (SP)
BNEL	T2,R0,802C4970
LBU	T7,0000 (A3)
LBU	T4,0000 (A3)
ANDI	T5,T4,FFC0
ORI	T6,T5,0002
BEQ	R0,R0,802C497C
SB	T6,0000 (A3)
LBU	T7,0000 (A3)
ANDI	T8,T7,FFC0
ORI	T9,T8,0001
SB	T9,0000 (A3)
LW	T1,0048 (SP)
ADDIU	V1,R0,0001
SW	T1,0038 (A3)
LW	T3,002C (SP)
LW	T2,002C (T3)
SW	T2,0034 (A3)
LW	T5,005C (SP)
LW	T4,0060 (SP)
SW	T4,0000 (T5)
BEQ	R0,R0,802C49BC
ADDIU	AT,R0,0001
OR	A0,S0,R0
JAL	802C41E4
SW	V1,0048 (SP)
OR	V1,V0,R0
ADDIU	AT,R0,0001
BNE	V1,AT,802C4AA0
NOP
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0005
JALR	RA,T9
NOP
OR	A0,S0,R0
JAL	802C4490
LW	A1,0048 (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C4A64
OR	V1,V0,R0
LW	T6,0060 (SP)
ADDIU	AT,R0,FFFF
OR	A2,R0,R0
BEQ	T6,AT,802C4AA0
NOP
LW	T7,0178 (S0)
ADDIU	A3,S0,01C0
ADDIU	A0,S0,08CC
LW	T8,0000 (T7)
LW	T1,0174 (T8)
SW	T1,000C (A3)
LW	T3,0060 (SP)
LW	T4,0040 (SP)
SLL	T2,T3,0x2
SUBU	T2,T2,T3
SLL	T2,T2,0x4
ADDU	A1,S0,T2
BEQ	T4,R0,802C4A54
ADDIU	A1,A1,020C
LBU	T7,0001 (A3)
SLL	T9,T4,0x3
ANDI	T6,T9,0078
ANDI	T8,T7,FF87
OR	T1,T6,T8
SB	T1,0001 (A3)
JAL	802C3B04
SW	V1,003C (SP)
BEQ	R0,R0,802C4AA0
LW	V1,003C (SP)
ADDIU	AT,R0,FFFF
BNEL	V0,AT,802C4AA0
OR	V1,R0,R0
LW	T3,01C0 (S0)
OR	A0,S0,R0
SRL	T2,T3,0x1E
BNEL	T2,R0,802C4A94
ADDIU	T4,R0,0004
JAL	802C3D38
SW	V1,003C (SP)
LW	V1,003C (SP)
ADDIU	T4,R0,0004
BEQ	R0,R0,802C4AA0
SB	T4,0186 (S0)
OR	V1,R0,R0
BNE	V1,R0,802C4B40
OR	A0,S0,R0
ADDIU	A3,S0,01C0
JAL	802C3A84
SW	A3,0030 (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C4ACC
LW	A3,0030 (SP)
ADDIU	T5,R0,0004
BEQ	R0,R0,802C4B2C
SB	T5,0186 (S0)
LW	T9,0000 (A3)
ADDIU	T1,R0,0003
SRL	T7,T9,0x1E
BNEL	T7,R0,802C4B18
SB	T1,0186 (S0)
LW	T6,0030 (A3)
ADDIU	T8,R0,0004
BNEL	T6,R0,802C4B18
SB	T1,0186 (S0)
SB	T8,0186 (S0)
SW	A3,0030 (SP)
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0005
JALR	RA,T9
NOP
BEQ	R0,R0,802C4B2C
LW	A3,0030 (SP)
SB	T1,0186 (S0)
SW	A3,0030 (SP)
LW	A1,0058 (SP)
JAL	800AE320
LW	A0,0054 (SP)
LW	A3,0030 (SP)
JAL	800BA660	;blank entry A0 of size 0xC, setting first byte to C0
OR	A0,A3,R0
ADDIU	T3,R0,FFFF
SW	R0,01F8 (S0)
SW	T3,01F4 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0050
JR	RA
NOP

802C4B54
ADDIU	SP,SP,FFE0
SW	A1,0024 (SP)
OR	A1,A0,R0
SW	RA,001C (SP)
SW	S0,0018 (SP)
SW	A0,0020 (SP)
LW	S0,0038 (A1)
SW	A1,0020 (SP)
JAL	800BA7E8
OR	A0,S0,R0
ADDIU	A0,S0,0018	;A0=S0+18: 
JAL	800A6A04
LW	A1,0024 (SP)
LW	T6,0020 (SP)
ADDIU	A0,S0,000C
JAL	800A6A04
LW	A1,0010 (T6)
LW	T7,0020 (SP)
LWL	T9,0028 (T7)
LWR	T9,002B (T7)
SWL	T9,0002 (S0)
SWR	T9,0005 (S0)
LWL	T8,002C (T7)
LWR	T8,002F (T7)
SWL	T8,0006 (S0)
SWR	T8,0009 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
JR	RA
ADDIU	SP,SP,0020

802C4BCC
ADDIU	SP,SP,FFC0
SW	S0,0014 (SP)
OR	S0,A0,R0
SW	RA,002C (SP)
SW	S5,0028 (SP)
SW	S4,0024 (SP)
SW	S3,0020 (SP)
SW	S2,001C (SP)
SW	S1,0018 (SP)
SW	A1,0044 (SP)
LW	S4,0038 (S0)
OR	A1,S0,R0
ADDIU	S3,S4,0028
SW	S3,0030 (SP)
JAL	800BA7E8
OR	A0,S4,R0
ADDIU	A0,S4,0018
JAL	800A6A04
LW	A1,0044 (SP)
ADDIU	A0,S4,000C	;A0=S4+C: p->target?
JAL	800A6A04
LW	A1,0010 (S0)	;A1=S0+10: p->actor data
LWL	T7,0028 (S0)
LWR	T7,002B (S0)
LB	T4,0026 (S4)
ADDIU	S5,R0,0001
SWL	T7,0002 (S4)
SWR	T7,0005 (S4)
LWL	T6,002C (S0)
LWR	T6,002F (S0)
ANDI	T5,T4,FF07
SWL	T6,0006 (S4)
SWR	T6,0009 (S4)
LHU	T8,0018 (S0)
SH	T8,0024 (S4)
LW	T1,0014 (S0)
SLL	T3,T1,0x3
OR	T6,T3,T5
SB	T6,0026 (S4)
LB	T9,003C (S0)
LB	T1,0026 (S4)
ANDI	T0,T9,0007
ANDI	T2,T1,FFF8
OR	T4,T0,T2
SB	T4,0026 (S4)
LB	T3,003C (S0)
BNEL	S5,T3,802C4D00
LW	RA,002C (SP)
LBU	T5,0000 (S0)
ADDIU	S0,R0,0024
OR	S1,R0,R0
ANDI	T6,T5,003F
BNE	T6,R0,802C4CBC
LW	S2,0030 (SP)
JAL	800A6978
OR	A0,S2,R0
ADDIU	S1,S1,000C
ADDIU	S2,S2,000C
BNE	S1,S0,802C4CA4
SB	R0,004C (S4)
OR	S0,R0,R0
ADDIU	S1,R0,0003
JAL	800A69C8	;V0=TRUE if short at A0 isn't an actor ID
OR	A0,S3,R0
BNE	V0,S5,802C4CE8
ADDIU	S0,S0,0001
OR	A0,S3,R0
JAL	800A6A04
LW	A1,0044 (SP)
BEQ	R0,R0,802C4CF4
LBU	T7,004C (S4)
BNE	S0,S1,802C4CC4
ADDIU	S3,S3,000C
LBU	T7,004C (S4)
ADDIU	T8,T7,0001
SB	T8,004C (S4)
LW	RA,002C (SP)
LW	S0,0014 (SP)
LW	S1,0018 (SP)
LW	S2,001C (SP)
LW	S3,0020 (SP)
LW	S4,0024 (SP)
LW	S5,0028 (SP)
JR	RA
ADDIU	SP,SP,0040

802C4D20
ADDIU	SP,SP,FFE0
SW	RA,0014 (SP)
OR	A1,A0,R0
LW	A0,0038 (A1)
SW	A1,0020 (SP)
JAL	800BA7E8
SW	A0,001C (SP)
LW	A1,0020 (SP)
LW	A0,001C (SP)
ADDIU	AT,R0,0001
LWL	T7,0028 (A1)
LWR	T7,002B (A1)
SWL	T7,0002 (A0)
SWR	T7,0005 (A0)
LWL	T6,002C (A1)
LWR	T6,002F (A1)
SWL	T6,0006 (A0)
SWR	T6,0009 (A0)
LHU	T8,0018 (A1)
SH	T8,000C (A0)
LBU	V0,0000 (A1)
ANDI	V0,V0,003F
BEQ	V0,AT,802C4DC0
ADDIU	AT,R0,0002
BEQ	V0,AT,802C4DC0
ADDIU	AT,R0,0003
BEQ	V0,AT,802C4DA4
ADDIU	T9,R0,0001
ADDIU	AT,R0,0006
BEQ	V0,AT,802C4DB4
ADDIU	T1,R0,0002
BEQ	R0,R0,802C4DC4
LW	RA,0014 (SP)
SB	T9,001E (A0)
LW	T0,0040 (A1)
BEQ	R0,R0,802C4DC0
SB	T0,0020 (A0)
SB	T1,001E (A0)
SB	R0,0020 (A0)
SH	R0,0022 (A0)
LW	RA,0014 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C4DD0
ADDIU	SP,SP,FFD8
SW	RA,001C (SP)
SW	S0,0018 (SP)
OR	A2,A0,R0
LUI	T6,8013
LW	T6,6FD8 (T6)
ADDIU	AT,R0,0001
ADDIU	S0,A2,01C0
SW	T6,0024 (SP)
LW	T7,0178 (A2)
LW	V0,01C0 (A2)
LW	T8,0000 (T7)
SRL	V0,V0,0x1E
BEQ	V0,R0,802C4E28
LW	A1,0174 (T8)
BEQ	V0,AT,802C4E38
ADDIU	S0,A2,01C0
ADDIU	AT,R0,0002
BEQ	V0,AT,802C4E48
ADDIU	S0,A2,01C0
BEQ	R0,R0,802C4E50
ADDIU	S0,A2,01C0
JAL	802C4B54
OR	A0,S0,R0
BEQ	R0,R0,802C4E54
LW	V0,0014 (S0)
JAL	802C4BCC
OR	A0,S0,R0
BEQ	R0,R0,802C4E54
LW	V0,0014 (S0)
JAL	802C4D20
OR	A0,S0,R0
LW	V0,0014 (S0)
ADDIU	AT,R0,FFFF
LW	A0,0024 (SP)
BEQ	V0,AT,802C4E70
OR	A1,V0,R0
LHU	A2,0018 (S0)
JAL	800B8B08
ADDIU	A3,R0,0002
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0028
JR	RA
NOP

802C4E84
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
OR	A1,A0,R0
LW	T6,0178 (A1)
LW	T7,0000 (T6)
LW	A0,0178 (T7)
JAL	800BA660	;blank entry A0 of size 0xC, setting first byte to C0
ADDIU	A0,A0,0020
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C4EB4	copy strings for quest "deliver item for actor to actor"
	accepts: A0=p->quest struct, A1=value
ADDIU	SP,SP,FFA8
SW	RA,001C (SP)
SW	A0,0058 (SP)	;SP+58=A0: p->quest
SW	A1,005C (SP)	;SP+5C=A1: value
LW	T6,0058 (SP)
ADDIU	A0,SP,0038	;A0=SP+38: p->target
JAL	800ACD18	;retrieve actor's name by ID
LW	A1,01CC (T6)	;A1=T6+1CC: p->sender ID
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
OR	A1,R0,R0	;A1=slot 0
ADDIU	A2,SP,0038	;A2=SP+38: p->str
JAL	8009D6D0	;copy A3 bytes from string A2 to slot A1 of table at A0
ADDIU	A3,R0,0006	;A3=6: strlen
//802C4EF0:
LW	T7,0058 (SP)
ADDIU	T8,T7,01C0	;T8=T7+1C0: p->quest data
SW	T8,0028 (SP)	;T8->SP+28
LW	A1,01D0 (T7)	;A1=T7+1D0: p->receiver
BEQL	A1,R0,802C4F4C
LW	T1,0028 (SP)
JAL	800ACD18	;retrieve actor's name by ID
ADDIU	A0,SP,0040	;A0=SP+40: p->target
JAL	8009D1F0	;V0=p->text controller
NOP
ADDIU	T9,R0,0001
SW	T9,0010 (SP)	;SP+10=1: 
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	A1,R0,0001	;A1=slot 1
ADDIU	A2,SP,0040	;A2=SP+40: p->str
JAL	8009D820
ADDIU	A3,R0,0006	;A3=6: strlen
LW	T0,0028 (SP)	;T0=SP+28: p->quest data
ADDIU	A1,R0,0003	;A1=slot 3
LW	A0,0010 (T0)	;A0=quest+10: p->reciever
JAL	8009504C
ADDIU	A0,A0,0004	;A0+=4: p->reciever's town
//802C4F48:	copy item to slot 2
LW	T1,0028 (SP)	;T1=SP+28: p->quest data
LHU	A1,0018 (T1)	;A1=T1+18: item ID
BEQL	A1,R0,802C4F88	;branch if no item
LW	T3,0028 (SP)
JAL	80096740	;copy item A1's name to A0
ADDIU	A0,SP,0048	;A0=SP+48: p->target
JAL	8009D1F0	;V0=p->text controller
NOP
ADDIU	T2,R0,0002
SW	T2,0010 (SP)	;SP+10=2: 
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	A1,R0,0002	;A1=slot 2
ADDIU	A2,SP,0048	;A2=SP+48: p->str
JAL	8009D820
ADDIU	A3,R0,000A	;A3=A: strlen
//802C4F84:
LW	T3,0028 (SP)	;T3=SP+28: p->quest data
ADDIU	A1,R0,0004	;A1=slot 4
LW	A0,000C (T3)	;A0=quest+C: p->sender
JAL	8009504C
ADDIU	A0,A0,0004	;A0+=4: sender's town
LW	V0,005C (SP)
ADDIU	AT,R0,FFFF
LW	T4,0058 (SP)
BEQ	V0,AT,802C5024	;branch if not set
SLL	T5,V0,0x2
SUBU	T5,T5,V0
SLL	T5,T5,0x4	;T5=V0*30: 
ADDU	V1,T4,T5
ADDIU	V1,V1,020C
BEQL	V1,R0,802C5028
LW	RA,001C (SP)
LW	V0,0008 (V1)
BEQL	V0,R0,802C5028
LW	RA,001C (SP)
LW	T6,0000 (V0)
ADDIU	AT,R0,0001
ADDIU	A0,V0,0028
SRL	T8,T6,0x1E
BNEL	T8,AT,802C5028
LW	RA,001C (SP)
JAL	800A69C8	;V0=TRUE if short at A0 isn't an actor ID
SW	A0,0034 (SP)
BNE	V0,R0,802C5024
LW	A1,0034 (SP)	;A1=SP+34: p->actor ID
JAL	800ACD18	;retrieve actor's name by ID
ADDIU	A0,SP,0040	;A0=SP+40: p->target
JAL	8009D1F0	;V0=p->text controller
NOP
ADDIU	T7,R0,0001
SW	T7,0010 (SP)	;SP+10=1: 
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	A1,R0,0005	;A1=slot 5
ADDIU	A2,SP,0040	;A2=SP+40: p->str
JAL	8009D820
ADDIU	A3,R0,0006	;A3=6: strlen
//802C5024:	return
LW	RA,001C (SP)
ADDIU	SP,SP,0058
JR	RA
NOP

802C5034
	accepts: A0=???
ADDIU	SP,SP,FFD0
SW	RA,001C (SP)
SW	A0,0030 (SP)
LW	T6,0030 (SP)	;T6=[A0]: p->???
ADDIU	AT,R0,0005
ADDIU	A0,SP,0024	;A0=SP+24: p->buffer
LW	T7,001C (T6)
ADDIU	A2,R0,000A	;A2=max strlen
LW	T8,0030 (SP)	;T8=[A0]: p->???
BNE	T7,AT,802C5094	;branch if not type 5
OR	A1,R0,R0	;A1=0
LW	A1,0024 (T6)	;A1=T6+24: 
SW	R0,0010 (SP)	;SP+10=0: normal mode
JAL	8009264C	;converts numeral into string
ADDIU	A3,R0,0001	;A3=1: align right
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	A1,R0,0009	;A1=9: slot
ADDIU	A2,SP,0024	;A2=SP+24: p->str
JAL	8009D6D0	;copy A3 bytes from string A2 to slot A1 of table at A0
ADDIU	A3,R0,000A	;A3=A: strlen
BEQ	R0,R0,802C50A0
LW	RA,001C (SP)
//802C5094:
JAL	800BB6A0	;copy name of item A0 to slot A1; must be slot 5-A
LHU	A0,0020 (T8)	;A0=T8+20: item#
//802C509C:	return
LW	RA,001C (SP)
ADDIU	SP,SP,0030
JR	RA
NOP

802C50AC
ADDIU	SP,SP,FFE0
SW	RA,0014 (SP)
SW	A0,0020 (SP)
JAL	8002C9AC	;V0=random number
NOP
ADD.S	F4,F0,F0
TRUNC.W.S	F6,F4
MFC1	T7,F6
JAL	8002C9AC	;V0=random number
SW	T7,0018 (SP)
LW	T8,0018 (SP)
LUI	AT,802D
SLL	T9,T8,0x2
ADDU	AT,AT,T9
LWC1	F8,796C (AT)
LUI	AT,4120
MTC1	AT,F10
LUI	AT,42C8
MTC1	AT,F4
MUL.S	F16,F8,F10
NOP
MUL.S	F18,F16,F0
ADD.S	F2,F4,F18
JAL	800B8C34
SWC1	F2,001C (SP)
MTC1	V0,F6
LUI	AT,42C8
MTC1	AT,F10
CVT.S.W	F8,F6
LWC1	F2,001C (SP)
LW	T0,0020 (SP)
LUI	AT,802D
LWC1	F18,7ACC (AT)
MTC1	T0,F6
ADD.S	F16,F8,F10
LUI	AT,4F80
LW	RA,0014 (SP)
CVT.S.W	F8,F6
MUL.S	F4,F16,F2
BGEZ	T0,802C515C
DIV.S	F2,F4,F18
MTC1	AT,F10
NOP
ADD.S	F8,F8,F10
MUL.S	F16,F8,F2
ADDIU	V0,R0,0001
LUI	AT,4F00
CFC1	T1,F31
CTC1	V0,F31
NOP
CVT.W.S	F4,F16
CFC1	V0,F31
NOP
ANDI	V0,V0,0078
BEQL	V0,R0,802C51D4
MFC1	V0,F4
MTC1	AT,F4
ADDIU	V0,R0,0001
SUB.S	F4,F16,F4
CTC1	V0,F31
NOP
CVT.W.S	F4,F4
CFC1	V0,F31
NOP
ANDI	V0,V0,0078
BNE	V0,R0,802C51C8
NOP
MFC1	V0,F4
LUI	AT,8000
BEQ	R0,R0,802C51E0
OR	V0,V0,AT
BEQ	R0,R0,802C51E0
ADDIU	V0,R0,FFFF
MFC1	V0,F4
NOP
BLTZ	V0,802C51C8
NOP
CTC1	T1,F31
NOP
NOP
JR	RA
ADDIU	SP,SP,0020

802C51F4
ADDIU	SP,SP,FFC8
SW	RA,001C (SP)
SW	S0,0018 (SP)
SW	A0,0038 (SP)
LW	T6,0038 (SP)
LUI	S0,8013
ADDIU	AT,R0,0005
LW	V0,001C (T6)
LW	S0,6FD8 (S0)
OR	V1,R0,R0
BNE	V0,AT,802C5290
LW	A1,0014 (T6)
LW	V0,0038 (S0)
LW	T7,0024 (T6)
ORI	AT,R0,C351
ADDIU	A2,R0,FFFF
ADDU	V0,T7,V0
SLTU	AT,V0,AT
BNEL	AT,R0,802C5284
SW	V0,0038 (S0)
BEQ	A1,A2,802C5304
SLL	T8,A1,0x1
ADDU	T9,S0,T8
LHU	T0,0014 (T9)
OR	A0,S0,R0
ADDIU	A2,R0,2102
BNE	T0,R0,802C5304
OR	A3,R0,R0
JAL	800B8B08
SW	V0,0024 (SP)
LW	V0,0024 (SP)
ADDIU	V1,R0,0001
ADDIU	V0,V0,8AD0
BEQ	R0,R0,802C5304
SW	V0,0038 (S0)
SW	V0,0038 (S0)
ADDIU	V1,R0,0001
BEQ	R0,R0,802C5308
OR	V0,V1,R0
ADDIU	A2,R0,FFFF
BEQL	V0,A2,802C5308
OR	V0,V1,R0
BEQ	A1,A2,802C52CC
SLL	T1,A1,0x1
ADDU	T2,S0,T1
LHU	T3,0014 (T2)
OR	A0,S0,R0
LW	T4,0038 (SP)
BNE	T3,R0,802C52CC
OR	A3,R0,R0
JAL	800B8B08
LHU	A2,0020 (T4)
BEQ	R0,R0,802C5304
ADDIU	V1,R0,0001
OR	A0,S0,R0
OR	A1,R0,R0
JAL	800B8068
SW	V1,0028 (SP)
ADDIU	A2,R0,FFFF
LW	V1,0028 (SP)
BEQ	V0,A2,802C5304
OR	A1,V0,R0
LW	T5,0038 (SP)
OR	A0,S0,R0
OR	A3,R0,R0
JAL	800B8B08
LHU	A2,0020 (T5)
ADDIU	V1,R0,0001
OR	V0,V1,R0
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0038
JR	RA
NOP

802C531C
ADDIU	SP,SP,FFE0
SW	A2,0028 (SP)
ANDI	A2,A2,00FF
ADDIU	T0,SP,0010
OR	A3,A1,R0
LUI	T6,802D
ADDIU	T6,T6,7974
LW	T8,0000 (T6)
ADDIU	A2,A2,FFFF
ANDI	A2,A2,00FF
SW	T8,0000 (T0)
LW	T7,0004 (T6)
SLTI	AT,A2,0004
LUI	T1,802D
SW	T7,0004 (T0)
LW	T8,0008 (T6)
ADDIU	T1,T1,7984
OR	V0,R0,R0
SW	T8,0008 (T0)
LW	T7,000C (T6)
OR	V1,A0,R0
BNE	AT,R0,802C537C
SW	T7,000C (T0)
ADDIU	A2,R0,0003
SLL	T9,A2,0x3
ADDU	A1,T9,T1
ADDIU	A0,R0,0008
LBU	T2,0000 (A1)
ADDIU	V0,V0,0004
ADDIU	V1,V1,0004
SB	T2,FFFC (V1)
LBU	T3,0001 (A1)
ADDIU	A1,A1,0004
SB	T3,FFFD (V1)
LBU	T4,FFFE (A1)
SB	T4,FFFE (V1)
LBU	T5,FFFF (A1)
BNE	V0,A0,802C5388
SB	T5,FFFF (V1)
SLL	T6,A2,0x2
ADDU	T7,T0,T6
LW	T8,0000 (T7)
SW	T8,0000 (A3)
JR	RA
ADDIU	SP,SP,0020

802C53D0
ADDIU	SP,SP,FE10
SW	S0,0020 (SP)
OR	S0,A0,R0
SW	RA,0024 (SP)
LW	T6,0178 (S0)
ADDIU	AT,R0,0001
LW	T7,0000 (T6)
LW	T8,0174 (T7)
SW	T8,01EC (SP)
LW	V0,01F0 (S0)
SW	R0,0040 (SP)
LW	T9,01C0 (S0)
SRL	T0,T9,0x1E
BNEL	T0,AT,802C5444
LW	T4,0010 (V0)
LW	V0,089C (S0)
ADDIU	A0,SP,01DC
ADDIU	A1,SP,0040
SLL	T1,V0,0x2
SUBU	T1,T1,V0
SLL	T1,T1,0x4
ADDU	T2,S0,T1
LW	T3,0214 (T2)
JAL	802C531C
LBU	A2,004C (T3)
ADDIU	A3,SP,01DC
BEQ	R0,R0,802C5450
ADDIU	A0,SP,0048
LW	T4,0010 (V0)
ADDIU	A3,V0,0006
SW	T4,0040 (SP)
ADDIU	A0,SP,0048
ADDIU	A1,R0,0190
SW	R0,0038 (SP)
JAL	8002F4C0
SW	A3,01D8 (SP)
LW	V1,0038 (SP)
ADDIU	A2,SP,0048
LW	A1,01D8 (SP)
OR	A0,R0,R0
LBU	V0,0000 (A1)
BEQ	V0,R0,802C5498
SLTI	AT,V1,0064
BEQ	AT,R0,802C5498
SLL	T5,V1,0x2
ADDU	T6,A2,T5
ADDIU	V0,V0,FFFF
SW	A0,0000 (T6)
BNE	V0,R0,802C5478
ADDIU	V1,V1,0001
ADDIU	A0,A0,0001
SLTI	AT,A0,0008
BNE	AT,R0,802C5470
ADDIU	A1,A1,0001
JAL	8002C9AC	;V0=random number
NOP
LUI	AT,42C8
MTC1	AT,F4
ADDIU	A2,SP,0048
ADDIU	V1,S0,01C0
MUL.S	F6,F0,F4
ADDIU	AT,R0,0005
TRUNC.W.S	F8,F6
MFC1	T8,F8
NOP
SLL	T9,T8,0x2
ADDU	T0,A2,T9
LW	T1,0000 (T0)
SW	T1,001C (V1)
BNE	T1,AT,802C550C
SW	T1,002C (SP)
LW	A0,0040 (SP)
JAL	802C50AC
SW	V1,0030 (SP)
LW	V1,0030 (SP)
ADDIU	T4,R0,2100
SW	V0,0024 (V1)
BEQ	R0,R0,802C5554
SH	T4,0020 (V1)
LW	T5,002C (SP)
ADDIU	AT,R0,0006
ADDIU	A0,V1,0020
BNE	T5,AT,802C5544
LW	A1,01EC (SP)
LW	T6,01EC (SP)
ADDIU	T8,R0,2401
BEQ	T6,R0,802C553C
NOP
LHU	T7,08C8 (S0)
BEQ	R0,R0,802C5554
SH	T7,0020 (V1)
BEQ	R0,R0,802C5554
SH	T8,0020 (V1)
LW	A2,002C (SP)
OR	A3,R0,R0
JAL	800BC454
SW	R0,0010 (SP)
LW	RA,0024 (SP)
LW	S0,0020 (SP)
ADDIU	SP,SP,01F0
JR	RA
NOP

802C5568
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
OR	A1,A0,R0
LW	V1,089C (A1)
ADDIU	AT,R0,FFFF
BEQ	V1,AT,802C55E8
SLL	T6,V1,0x2
SUBU	T6,T6,V1
SLL	T6,T6,0x4
ADDU	T7,A1,T6
LW	A0,0214 (T7)
ADDIU	AT,R0,0001
LW	V0,0000 (A0)
SRL	V0,V0,0x1E
BEQ	V0,R0,802C55C0
NOP
BEQ	V0,AT,802C55D0
ADDIU	AT,R0,0002
BEQ	V0,AT,802C55E0
NOP
BEQ	R0,R0,802C55EC
LW	RA,0014 (SP)
JAL	800BA690
ADDIU	A1,R0,0001
BEQ	R0,R0,802C55EC
LW	RA,0014 (SP)
JAL	800BA6F0
ADDIU	A1,R0,0001
BEQ	R0,R0,802C55EC
LW	RA,0014 (SP)
JAL	800BA778
NOP
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C55F8
ADDIU	SP,SP,FFD0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,089C (S0)
ADDIU	AT,R0,FFFF
LW	A2,01F8 (S0)
BEQ	T6,AT,802C563C
OR	A0,S0,R0
JAL	802C5568
SW	A2,0028 (SP)
LW	T9,08BC (S0)
ADDIU	A0,S0,020C
ADDIU	A1,R0,0023
JALR	RA,T9
NOP
LW	A2,0028 (SP)
BEQL	A2,R0,802C5660
LW	RA,001C (SP)
SW	R0,0024 (SP)
LW	T9,08C0 (S0)
LW	A3,01F4 (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,SP,0024
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0030
JR	RA
NOP

802C5670
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
SW	A0,0018 (SP)
SW	A1,001C (SP)
JAL	800BC414
OR	A0,A2,R0
LW	T6,001C (SP)
LW	T8,0018 (SP)
ADDU	T7,V0,T6
SW	T7,0000 (T8)
LW	RA,0014 (SP)
JR	RA
ADDIU	SP,SP,0018

802C56A4
ADDIU	SP,SP,FFC0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
ADDIU	A2,R0,0004
LBU	V0,0186 (S0)
LW	V1,01C0 (S0)
LBU	A1,01C0 (S0)
ADDIU	T0,R0,0001
SRL	V1,V1,0x1E
BEQ	V0,A2,802C5810
ANDI	A1,A1,003F
ADDIU	A0,R0,0005
BEQ	V0,A0,802C5700
ADDIU	A3,S0,0188
ADDIU	AT,R0,000E
BEQ	V0,AT,802C5714
ADDIU	A3,S0,0188
ADDIU	AT,R0,000F
BEQ	V0,AT,802C57C4
ADDIU	A3,S0,0188
BEQ	R0,R0,802C588C
OR	A0,A3,R0
ADDIU	T6,R0,0097
ADDIU	T7,R0,0032
SW	T6,0000 (A3)
BEQ	R0,R0,802C58B4
SW	T7,0004 (A3)
ADDIU	T8,R0,0094
BNE	V1,R0,802C574C
SW	T8,0000 (A3)
BEQ	A1,R0,802C57A8
ADDIU	T0,R0,0001
BNE	A1,T0,802C573C
ADDIU	V0,R0,0002
ADDIU	T9,R0,0095
BEQ	R0,R0,802C57A8
SW	T9,0000 (A3)
BNE	A1,V0,802C57A8
ADDIU	T1,R0,0095
BEQ	R0,R0,802C57A8
SW	T1,0000 (A3)
ADDIU	T0,R0,0001
BNE	V1,T0,802C576C
ADDIU	V0,R0,0002
ADDIU	V0,R0,0002
BEQ	A1,V0,802C57A8
ADDIU	T2,R0,0097
BEQ	R0,R0,802C57A8
SW	T2,0000 (A3)
BNEL	V1,V0,802C57AC
ADDIU	A0,A3,0004
BEQ	A1,R0,802C5794
ADDIU	T3,R0,0096
BEQ	A1,A2,802C579C
ADDIU	T4,R0,00EA
BEQ	A1,A0,802C57A4
ADDIU	T5,R0,00EB
BEQ	R0,R0,802C57AC
ADDIU	A0,A3,0004
BEQ	R0,R0,802C57A8
SW	T3,0000 (A3)
BEQ	R0,R0,802C57A8
SW	T4,0000 (A3)
SW	T5,0000 (A3)
ADDIU	A0,A3,0004
ADDIU	A1,R0,0089
ADDIU	A2,R0,000A
JAL	802C5670
SW	A3,0024 (SP)
BEQ	R0,R0,802C58B4
LW	A3,0024 (SP)
ADDIU	V0,R0,0002
BNE	V1,V0,802C5808
ADDIU	T0,R0,0001
BNE	A1,T0,802C57E4
ADDIU	T9,R0,009B
ADDIU	T6,R0,0098
BEQ	R0,R0,802C5804
SW	T6,0188 (S0)
BNE	A1,V0,802C57F8
ADDIU	AT,R0,0003
ADDIU	T7,R0,0099
BEQ	R0,R0,802C5804
SW	T7,0188 (S0)
BNE	A1,AT,802C5804
ADDIU	T8,R0,009A
SW	T8,0188 (S0)
SW	T9,018C (S0)
BEQ	R0,R0,802C58B4
ADDIU	A3,S0,0188
BNE	V1,T0,802C5858
ADDIU	A3,S0,0188
BNE	A1,R0,802C582C
ADDIU	T1,R0,0097
SW	T1,0188 (S0)
BEQ	R0,R0,802C5870
ADDIU	A3,S0,0188
BNE	A1,T0,802C5844
ADDIU	V0,R0,0002
ADDIU	T2,R0,0097
SW	T2,0188 (S0)
BEQ	R0,R0,802C5870
ADDIU	A3,S0,0188
BNE	A1,V0,802C5850
ADDIU	T3,R0,0097
SW	T3,0188 (S0)
BEQ	R0,R0,802C5870
ADDIU	A3,S0,0188
OR	A0,A3,R0
ADDIU	A1,R0,007F
ADDIU	A2,R0,000A
JAL	802C5670
SW	A3,0024 (SP)
LW	A3,0024 (SP)
ADDIU	A0,A3,0004
ADDIU	A1,R0,0089
ADDIU	A2,R0,000A
JAL	802C5670
SW	A3,0024 (SP)
BEQ	R0,R0,802C58B4
LW	A3,0024 (SP)
ADDIU	A1,R0,007F
ADDIU	A2,R0,000A
JAL	802C5670
SW	A3,0024 (SP)
LW	A3,0024 (SP)
ADDIU	A1,R0,0089
ADDIU	A2,R0,000A
JAL	802C5670
ADDIU	A0,A3,0004
LW	A3,0024 (SP)
ADDIU	A0,A3,0008
ADDIU	A1,R0,016A
ADDIU	A2,R0,0005
JAL	802C5670
SW	A3,0024 (SP)
LW	A3,0024 (SP)
ADDIU	T4,R0,FFFF
ADDIU	T5,R0,0003
SW	T4,0014 (A3)
SW	T5,0010 (A3)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0040
JR	RA
NOP

802C58F0
ADDIU	SP,SP,FFE0
SW	RA,0014 (SP)
SW	A0,0020 (SP)
LW	A3,0020 (SP)
ADDIU	A1,R0,0043
ADDIU	A2,R0,000A
ADDIU	A3,A3,0188
OR	A0,A3,R0
JAL	802C5670
SW	A3,0018 (SP)
LW	A3,0018 (SP)
ADDIU	A1,R0,004D
ADDIU	A2,R0,000A
JAL	802C5670
ADDIU	A0,A3,0004
LW	A3,0018 (SP)
ADDIU	T6,R0,0002
ADDIU	T7,R0,FFFF
SW	T6,0010 (A3)
SW	T7,0014 (A3)
LW	RA,0014 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C5950
ADDIU	SP,SP,FFE0
SW	RA,0014 (SP)
JAL	800BBBEC
NOP
LUI	T6,8013
LBU	T6,6EA3 (T6)
LUI	AT,2000
ORI	AT,AT,0002
ADDU	T7,T6,AT
SW	T7,0018 (SP)
JAL	800951C0
SW	V0,001C (SP)
BNE	V0,R0,802C5A04
LW	V1,001C (SP)
LW	A0,0018 (SP)
JAL	8007D318
SW	V1,001C (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C5A04
LW	V1,001C (SP)
BEQL	V1,R0,802C5A08
LW	RA,0014 (SP)
LW	V0,0000 (V1)
ADDIU	AT,R0,0001
SRL	T8,V0,0x1E
BNEL	T8,AT,802C5A08
LW	RA,0014 (SP)
LBU	T9,0000 (V1)
ADDIU	AT,R0,000D
SLL	T1,V0,0x9
ANDI	T0,T9,003F
BNE	T0,AT,802C5A04
SRL	T2,T1,0x1C
ADDIU	AT,R0,0002
BNEL	T2,AT,802C5A08
LW	RA,0014 (SP)
LW	T3,0024 (V1)
ADDIU	AT,R0,0002
SLL	T4,T3,0x15
SRA	T5,T4,0x1D
BNEL	T5,AT,802C5A08
LW	RA,0014 (SP)
LBU	T6,0001 (V1)
ANDI	T7,T6,FF87
SB	T7,0001 (V1)
LW	RA,0014 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C5A14
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T9,08B8 (S0)
ADDIU	T6,R0,000D
ADDIU	T7,R0,254A
ADDIU	T8,R0,FFFF
SW	T6,01A8 (S0)
SW	T7,01A4 (S0)
SW	T8,019C (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0002
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C5A78
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
OR	A2,A0,R0
LW	T6,019C (A2)
ADDIU	AT,R0,0002
BNEL	T6,AT,802C5AB8
LW	T7,017C (A2)
JAL	8009D1F0	;V0=p->text controller
SW	A2,0018 (SP)
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	802C5A14
LW	A0,0018 (SP)
BEQ	R0,R0,802C5AEC
LW	RA,0014 (SP)
LW	T7,017C (A2)
ADDIU	A1,R0,0001
LW	A0,0000 (T7)
BEQL	A0,R0,802C5AD8
LW	T9,08B8 (A2)
JAL	800A6DD0
SW	A2,0018 (SP)
LW	A2,0018 (SP)
LW	T9,08B8 (A2)
OR	A0,A2,R0
ADDIU	A1,R0,0009
JALR	RA,T9
NOP
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C5AF8
ADDIU	SP,SP,FFE0
SW	RA,0014 (SP)
SW	A1,0024 (SP)
OR	A3,A0,R0
LBU	A2,0000 (A3)
ADDIU	AT,R0,0003
OR	V1,R0,R0
ANDI	A2,A2,003F
BNE	A2,AT,802C5B58
LW	T6,0024 (SP)
LBU	A0,04E1 (T6)
LBU	A1,04E2 (T6)
SW	A3,0020 (SP)
SW	A2,001C (SP)
JAL	800BB634
SW	R0,0018 (SP)
LW	A3,0020 (SP)
LW	V1,0018 (SP)
LW	A2,001C (SP)
LBU	T7,0020 (A3)
SLT	AT,V0,T7
BEQ	AT,R0,802C5B58
NOP
ADDIU	V1,R0,1069
BNE	V1,R0,802C5B70
LW	RA,0014 (SP)
SLL	T8,A2,0x2
LUI	V1,802D
ADDU	V1,V1,T8
LW	V1,79A4 (V1)
OR	V0,V1,R0
JR	RA
ADDIU	SP,SP,0020

802C5B7C	no longer serves a function
	accepts: A0=pointer (unused), A1=value (0-3), A2=unused
SW	A0,0000 (SP)
BEQ	A1,R0,802C5B98
ADDIU	AT,R0,0001
BEQ	A1,AT,802C5B98
ADDIU	AT,R0,0002
BNE	A1,AT,802C5B98
NOP
//802C5B98:	return
JR	RA
NOP

802C5BA0
ADDIU	SP,SP,FFA8
SW	S0,0020 (SP)
OR	S0,A0,R0
SW	RA,0024 (SP)
LW	T6,0178 (S0)
LW	T7,0000 (T6)
LW	A0,0174 (T7)
JAL	800A7D08
SW	A0,0054 (SP)
ADDIU	T8,R0,FFFF
ADDIU	T9,R0,0001
SW	V0,0050 (SP)
SW	T8,0040 (SP)
SW	T9,0038 (SP)
JAL	802C37F8
OR	A0,S0,R0
ADDIU	AT,R0,FFFF
BEQ	V0,AT,802C5C00
SW	V0,0044 (SP)
ADDIU	T0,R0,0009
ADDIU	T1,R0,0012
SW	T0,01A8 (S0)
BEQ	R0,R0,802C6138
SB	T1,0186 (S0)
OR	A0,S0,R0
JAL	802C3740
OR	A1,R0,R0
ADDIU	AT,R0,FFFF
BEQ	V0,AT,802C5ECC
SW	V0,0044 (SP)
SLL	T2,V0,0x2
SUBU	T2,T2,V0
SLL	T2,T2,0x4
ADDU	V1,S0,T2
LW	A2,0214 (V1)
ADDIU	A3,R0,0001
ADDIU	A0,V1,020C
LW	T3,0000 (A2)
LW	A1,0054 (SP)
SRL	T4,T3,0x1E
BNE	A3,T4,802C5C84
NOP
LW	T5,0024 (A2)
ADDIU	AT,R0,0002
SLL	T6,T5,0x15
SRA	T7,T6,0x1D
BNE	T7,AT,802C5C84
NOP
SB	R0,0184 (S0)
SB	A3,08CB (S0)
SB	R0,0186 (S0)
JAL	8009D1F0	;V0=p->text controller
SW	R0,0038 (SP)
JAL	8009E9E8
OR	A0,V0,R0	;A0=V0: p->text controller
BEQ	R0,R0,802C613C
LW	T7,01A4 (S0)
JAL	802C38FC
SW	A2,0048 (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C5D5C
ADDIU	A3,R0,0001
LW	A0,0048 (SP)
ADDIU	T8,R0,02A6
SW	T8,01A4 (S0)
LW	V0,0000 (A0)
ADDIU	V1,R0,0002
SRL	V0,V0,0x1E
BNE	V1,V0,802C5D00
NOP
LBU	T9,0000 (A0)
ADDIU	AT,R0,0006
ANDI	T0,T9,003F
BNE	T0,AT,802C5D00
NOP
JAL	800BB990
LW	A1,0054 (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C5CEC
ADDIU	T2,R0,001B
ADDIU	T1,R0,001C
BEQ	R0,R0,802C6138
SB	T1,0186 (S0)
ADDIU	T3,R0,02A6
SB	T2,0186 (S0)
SW	T3,01A4 (S0)
BEQ	R0,R0,802C613C
LW	T7,01A4 (S0)
BNE	V1,V0,802C5D54
ADDIU	T5,R0,000E
LBU	V0,0000 (A0)
ANDI	V0,V0,003F
BEQ	A3,V0,802C5D28
NOP
BEQ	V1,V0,802C5D28
ADDIU	AT,R0,0003
BNE	V0,AT,802C5D54
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
LW	A2,0048 (SP)
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	A1,R0,000C
ADDIU	A3,R0,0006
JAL	8009D6D0	;copy A3 bytes from string A2 to slot A1 of table at A0
ADDIU	A2,A2,000E
ADDIU	T4,R0,000F
BEQ	R0,R0,802C6138
SB	T4,0186 (S0)
BEQ	R0,R0,802C6138
SB	T5,0186 (S0)
LW	T6,0048 (SP)
ADDIU	T7,R0,0005
ADDIU	V1,R0,0002
LW	V0,0000 (T6)
ADDIU	T9,R0,FFFF
SRL	V0,V0,0x1E
BNE	A3,V0,802C5D90
NOP
SB	T7,0186 (S0)
LW	T8,0044 (SP)
SW	T9,0044 (SP)
BEQ	R0,R0,802C5EC0
SW	T8,0040 (SP)
BNE	V1,V0,802C5EC0
LW	T0,0044 (SP)
SLL	T1,T0,0x2
SUBU	T1,T1,T0
SLL	T1,T1,0x4
ADDU	A0,S0,T1
JAL	802C3950
ADDIU	A0,A0,020C
BNE	V0,R0,802C5E90
ADDIU	A3,R0,0001
LW	V0,0048 (SP)
LUI	A1,8013
LW	T2,0000 (V0)
ADDIU	A0,V0,000E
SLL	T3,T2,0x9
SRL	T4,T3,0x1C
BNEL	T4,R0,802C5E3C
LBU	T8,0000 (V0)
LW	A1,6FD8 (A1)
JAL	800B7A00
SW	A0,0028 (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C5E14
LW	A0,0028 (SP)
ADDIU	T5,R0,0003
SB	T5,0186 (S0)
JAL	800BA660	;blank entry A0 of size 0xC, setting first byte to C0
ADDIU	A0,S0,01C0
ADDIU	T6,R0,FFFF
SW	R0,01F8 (S0)
SW	T6,01F4 (S0)
BEQ	R0,R0,802C5EC0
SW	R0,0038 (SP)
JAL	800B7914
NOP
BNE	V0,R0,802C5E30
ADDIU	A3,R0,0001
ADDIU	T7,R0,001B
BEQ	R0,R0,802C5EC0
SB	T7,0186 (S0)
BEQ	R0,R0,802C5EC0
SB	A3,0186 (S0)
LBU	T8,0000 (V0)
ADDIU	AT,R0,0006
ANDI	T9,T8,003F
BNE	T9,AT,802C5E88
NOP
JAL	800951C0
NOP
BNE	V0,R0,802C5E64
ADDIU	A3,R0,0001
BEQ	R0,R0,802C5EC0
SB	A3,0186 (S0)
ADDIU	T0,R0,0003
SB	T0,0186 (S0)
JAL	800BA660	;blank entry A0 of size 0xC, setting first byte to C0
ADDIU	A0,S0,01C0
ADDIU	T1,R0,FFFF
SW	R0,01F8 (S0)
SW	T1,01F4 (S0)
BEQ	R0,R0,802C5EC0
SW	R0,0038 (SP)
BEQ	R0,R0,802C5EC0
SB	A3,0186 (S0)
ADDIU	T2,R0,0003
SB	T2,0186 (S0)
JAL	800BA660	;blank entry A0 of size 0xC, setting first byte to C0
ADDIU	A0,S0,01C0
ADDIU	T3,R0,FFFF
SW	R0,01F8 (S0)
SW	T3,01F4 (S0)
LW	T4,0044 (SP)
SW	R0,0038 (SP)
OR	A0,S0,R0
JAL	802C55F8
SW	T4,089C (S0)
ADDIU	T5,R0,02A6
BEQ	R0,R0,802C6138
SW	T5,01A4 (S0)
OR	A0,S0,R0
JAL	802C3740
ADDIU	A1,R0,0001
ADDIU	AT,R0,FFFF
BEQ	V0,AT,802C5FD8
SW	V0,0044 (SP)
SLL	T7,V0,0x2
SUBU	T7,T7,V0
SLL	T7,T7,0x4
ADDU	A0,S0,T7
JAL	802C3950
ADDIU	A0,A0,020C
BNE	V0,R0,802C5F18
LW	T9,0044 (SP)
ADDIU	A3,R0,0001
ADDIU	T8,R0,02A6
SB	A3,0186 (S0)
BEQ	R0,R0,802C6138
SW	T8,01A4 (S0)
SLL	T0,T9,0x2
SUBU	T0,T0,T9
SLL	T0,T0,0x4
ADDU	T1,S0,T0
LW	V1,0214 (T1)
ADDIU	A3,R0,0001
LW	T2,0000 (V1)
SRL	T3,T2,0x1E
BNEL	A3,T3,802C5FC8
ADDIU	T6,R0,0009
LBU	V0,0000 (V1)
LW	T4,0044 (SP)
ANDI	V0,V0,003F
BEQL	V0,R0,802C5F60
LW	T9,08B8 (S0)
BNEL	A3,V0,802C5FC8
ADDIU	T6,R0,0009
LW	T9,08B8 (S0)
SW	T4,089C (S0)
OR	A0,S0,R0
JALR	RA,T9
OR	A1,R0,R0
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0001
JALR	RA,T9
NOP
LW	A1,01C0 (S0)
LBU	A2,01C0 (S0)
SW	V0,01D4 (S0)
ADDIU	A0,S0,0200
SRL	A1,A1,0x1E
JAL	802C5B7C	;no longer serves a function
ANDI	A2,A2,003F
OR	A0,S0,R0
JAL	802C4EB4	;copy strings for quest "deliver item for actor to actor"
LW	A1,0044 (SP)
ADDIU	T5,R0,FFFF
SW	R0,01F8 (S0)
SW	T5,01F4 (S0)
JAL	802C55F8
OR	A0,S0,R0
SW	R0,0038 (SP)
ADDIU	T6,R0,0009
ADDIU	T7,R0,0006
SB	T6,0186 (S0)
BEQ	R0,R0,802C6138
SW	T7,01A8 (S0)
JAL	802C3988
OR	A0,S0,R0
ADDIU	AT,R0,FFFF
BEQ	V0,AT,802C60EC
SW	V0,0044 (SP)
SLL	T0,V0,0x2
SUBU	T0,T0,V0
SLL	T0,T0,0x4
ADDU	V0,S0,T0
LW	T1,0214 (V0)
ADDIU	A0,V0,020C
JAL	802C3950
SW	T1,0048 (SP)
BNE	V0,R0,802C6028
ADDIU	T3,R0,0009
ADDIU	V1,R0,0002
ADDIU	T2,R0,02A6
SB	V1,0186 (S0)
BEQ	R0,R0,802C6138
SW	T2,01A4 (S0)
ADDIU	T4,R0,0006
SB	T3,0186 (S0)
SW	T4,01A8 (S0)
LW	T9,0048 (SP)
ADDIU	A3,R0,0001
LW	T5,0044 (SP)
LBU	V0,0000 (T9)
ANDI	V0,V0,003F
BEQL	V0,R0,802C605C
LW	T9,08B8 (S0)
BNEL	A3,V0,802C613C
LW	T7,01A4 (S0)
LW	T9,08B8 (S0)
SW	T5,089C (S0)
OR	A0,S0,R0
JALR	RA,T9
OR	A1,R0,R0
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0001
JALR	RA,T9
NOP
LW	A1,01C0 (S0)
LBU	A2,01C0 (S0)
SW	V0,01D4 (S0)
ADDIU	A0,S0,0200
SRL	A1,A1,0x1E
JAL	802C5B7C	;no longer serves a function
ANDI	A2,A2,003F
OR	A0,S0,R0
JAL	802C4EB4	;copy strings for quest "deliver item for actor to actor"
LW	A1,0044 (SP)
ADDIU	T6,R0,FFFF
SW	R0,01F8 (S0)
SW	T6,01F4 (S0)
JAL	802C55F8
OR	A0,S0,R0
LW	T7,0048 (SP)
ADDIU	T1,R0,000D
ADDIU	T2,R0,2B73
LBU	T8,0000 (T7)
ANDI	T0,T8,003F
BNEL	T0,R0,802C60E4
SW	R0,0038 (SP)
SW	T1,01A8 (S0)
SW	T2,01A4 (S0)
SW	R0,0038 (SP)
BEQ	R0,R0,802C613C
LW	T7,01A4 (S0)
JAL	800AE2E8
LW	A0,0050 (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C6114
ADDIU	T5,R0,0003
ADDIU	T3,R0,0006
ADDIU	T4,R0,02A6
SB	T3,0186 (S0)
BEQ	R0,R0,802C6138
SW	T4,01A4 (S0)
ADDIU	T9,R0,02A6
SB	T5,0186 (S0)
SW	T9,01A4 (S0)
JAL	800BA660	;blank entry A0 of size 0xC, setting first byte to C0
ADDIU	A0,S0,01C0
ADDIU	T6,R0,FFFF
SW	R0,01F8 (S0)
SW	T6,01F4 (S0)
SW	R0,0038 (SP)
LW	T7,01A4 (S0)
ADDIU	AT,R0,02A6
BNEL	T7,AT,802C615C
LW	T8,0038 (SP)
JAL	80065040
NOP
JAL	80065EE8
OR	A0,V0,R0
LW	T8,0038 (SP)
ADDIU	AT,R0,0001
LW	T0,0044 (SP)
BNE	T8,AT,802C620C
ADDIU	AT,R0,FFFF
BEQ	T0,AT,802C61B4
OR	A0,S0,R0
LW	T9,08B8 (S0)
SW	T0,089C (S0)
OR	A0,S0,R0
JALR	RA,T9
OR	A1,R0,R0
LBU	T1,0186 (S0)
ADDIU	AT,R0,0012
BEQL	T1,AT,802C61D4
LW	V0,01C0 (S0)
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0001
JALR	RA,T9
NOP
BEQ	R0,R0,802C61D0
SW	V0,01D4 (S0)
LW	T2,0054 (SP)
LW	T3,0040 (SP)
LW	A1,0050 (SP)
LBU	A2,000B (T2)
ADDIU	A3,SP,0044
JAL	802C4834
SW	T3,0010 (SP)
LW	V0,01C0 (S0)
ADDIU	AT,R0,0003
ADDIU	A0,S0,0200
SRL	V0,V0,0x1E
BEQL	V0,AT,802C6208
LW	T4,0044 (SP)
LBU	A2,01C0 (S0)
OR	A1,V0,R0
JAL	802C5B7C	;no longer serves a function
ANDI	A2,A2,003F
OR	A0,S0,R0
JAL	802C4EB4	;copy strings for quest "deliver item for actor to actor"
LW	A1,0044 (SP)
LW	T4,0044 (SP)
SW	T4,089C (S0)
JAL	802C56A4
OR	A0,S0,R0
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
SB	R0,0185 (S0)
LW	RA,0024 (SP)
LW	S0,0020 (SP)
ADDIU	SP,SP,0058
JR	RA
NOP

802C6254
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,019C (S0)
SB	R0,0185 (S0)
ADDIU	T7,R0,0002
BNE	T6,R0,802C62BC
ADDIU	T8,R0,FFFF
SW	T7,01A8 (S0)
JAL	8009D1F0	;V0=p->text controller
SW	T8,019C (S0)
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
BEQ	R0,R0,802C62C8
SB	R0,0185 (S0)
JAL	802C5A78
OR	A0,S0,R0
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C62DC
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,019C (S0)
ADDIU	T7,R0,03D4
ADDIU	T8,R0,FFFF
BNE	T6,R0,802C6344
NOP
SW	T7,01A4 (S0)
JAL	8009D1F0	;V0=p->text controller
SW	T8,019C (S0)
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
BEQ	R0,R0,802C6350
SB	R0,0185 (S0)
JAL	802C5A78
OR	A0,S0,R0
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C6364
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,019C (S0)
BNE	T6,R0,802C63D8
NOP
JAL	802C5950
NOP
ADDIU	T7,R0,0282
ADDIU	T8,R0,FFFF
SW	R0,01F8 (S0)
SW	T7,01A4 (S0)
JAL	8009D1F0	;V0=p->text controller
SW	T8,019C (S0)
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
BEQ	R0,R0,802C63E4
SB	R0,0185 (S0)
JAL	802C5A78
OR	A0,S0,R0
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C63F8
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,019C (S0)
ADDIU	T0,R0,FFFF
BNE	T6,R0,802C6478
NOP
LW	T7,01F0 (S0)
ADDIU	T8,R0,0440
ADDIU	T9,R0,0008
BNEL	T7,R0,802C6438
SW	T9,01A8 (S0)
BEQ	R0,R0,802C6438
SW	T8,01A4 (S0)
SW	T9,01A8 (S0)
JAL	8009D1F0	;V0=p->text controller
SW	T0,019C (S0)
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
BEQ	R0,R0,802C6484
SB	R0,0185 (S0)
JAL	802C5A78
OR	A0,S0,R0
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C6498
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,019C (S0)
OR	A0,S0,R0
BNE	T6,R0,802C6570
NOP
JAL	802C4DD0
SW	R0,01A8 (S0)
JAL	802C4E84
OR	A0,S0,R0
LW	T9,08BC (S0)
ADDIU	A0,S0,020C
ADDIU	A1,R0,0023
JALR	RA,T9
NOP
ADDIU	T7,R0,FFFF
SW	T7,089C (S0)
JAL	802C58F0
OR	A0,S0,R0
JAL	80065040
NOP
JAL	80065EE8
OR	A0,V0,R0
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
LW	T8,01F8 (S0)
ADDIU	AT,R0,0001
ADDIU	T4,R0,0019
LW	V0,0000 (T8)
SRL	T0,V0,0x1E
BNE	T0,AT,802C653C
SLL	T1,V0,0x9
SRL	T2,T1,0x1C
BNE	T2,R0,802C653C
ADDIU	T3,R0,001A
BEQ	R0,R0,802C6540
SB	T3,0186 (S0)
SB	T4,0186 (S0)
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
BEQ	R0,R0,802C657C
SB	R0,0185 (S0)
JAL	802C5A78
OR	A0,S0,R0
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C6590
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0006
JALR	RA,T9
NOP
ADDIU	T6,R0,0018
ADDIU	T7,R0,0001
SB	T6,0186 (S0)
SB	R0,0185 (S0)
SW	T7,01A8 (S0)
JAL	802C55F8
OR	A0,S0,R0
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C660C
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
ADDIU	T6,R0,0001
SB	R0,0185 (S0)
SW	T6,01A8 (S0)
JAL	802C55F8
OR	A0,S0,R0
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C666C
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,019C (S0)
BNE	T6,R0,802C6714
NOP
JAL	802C5950
NOP
LW	T8,01C0 (S0)
ADDIU	T7,R0,0008
ADDIU	AT,R0,0002
SRL	T9,T8,0x1E
SB	T7,0186 (S0)
BNE	T9,AT,802C66BC
SW	R0,01A8 (S0)
JAL	802C4DD0
OR	A0,S0,R0
JAL	802C4E84
OR	A0,S0,R0
JAL	802C58F0
OR	A0,S0,R0
JAL	80065040
NOP
JAL	80065EE8
OR	A0,V0,R0
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
BEQ	R0,R0,802C6720
SB	R0,0185 (S0)
JAL	802C5A78
OR	A0,S0,R0
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C6734
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	V1,019C (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0001
BNE	V1,R0,802C682C
OR	V0,V1,R0
ADDIU	A1,R0,0001
JAL	802C4DD0
SW	A1,01A8 (S0)
JAL	802C4E84
OR	A0,S0,R0
LW	V0,01F8 (S0)
ADDIU	A1,R0,0001
ADDIU	T8,R0,0014
LW	V1,0000 (V0)
ADDIU	T9,R0,0008
SRL	A0,V1,0x1E
BNEL	A1,A0,802C67A4
SB	T8,0186 (S0)
BNE	A1,A0,802C67C8
SLL	T6,V1,0x9
SRL	T7,T6,0x1C
BNEL	T7,R0,802C67CC
ADDIU	T2,R0,001E
SB	T8,0186 (S0)
SB	T9,0185 (S0)
LW	T0,0000 (V0)
SRL	T1,T0,0x1E
BEQL	A1,T1,802C6800
LW	T9,08B8 (S0)
JAL	800D1A9C
ADDIU	A0,R0,012E
BEQ	R0,R0,802C6800
LW	T9,08B8 (S0)
ADDIU	T2,R0,001E
SB	T2,0186 (S0)
SB	R0,0185 (S0)
LW	T3,0000 (V0)
SRL	T4,T3,0x1E
BNEL	A1,T4,802C6800
LW	T9,08B8 (S0)
LBU	T5,0000 (V0)
ANDI	T6,T5,003F
BNEL	T6,R0,802C6800
LW	T9,08B8 (S0)
JAL	800D1A9C
ADDIU	A0,R0,012E
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
BEQ	R0,R0,802C68DC
NOP
BNE	V0,A1,802C688C
ADDIU	AT,R0,0002
JAL	802C3D38
OR	A0,S0,R0
LW	T9,08B8 (S0)
ADDIU	T7,R0,0003
SW	T7,01A8 (S0)
SB	R0,0185 (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0002
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
LW	T8,017C (S0)
LW	A0,0000 (T8)
BEQ	A0,R0,802C68DC
NOP
JAL	800A6DD0
ADDIU	A1,R0,FFFD
BEQ	R0,R0,802C68DC
NOP
BNE	V1,AT,802C68A4
OR	A0,S0,R0
JAL	802C5A14
OR	A0,S0,R0
BEQ	R0,R0,802C68DC
NOP
JAL	802C4DD0
SW	A1,01A8 (S0)
JAL	802C4E84
OR	A0,S0,R0
LW	T9,08B8 (S0)
SB	R0,0185 (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0002
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C6900
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0006
JALR	RA,T9
NOP
ADDIU	T6,R0,000B
JAL	8009D1F0	;V0=p->text controller
SB	T6,0185 (S0)
JAL	8009E9E8
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	T7,R0,0001
SW	T7,01A8 (S0)
JAL	802C55F8
OR	A0,S0,R0
LW	T9,08B8 (S0)
ADDIU	T8,R0,0018
SB	T8,0186 (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0002
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C6988
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
OR	A2,A0,R0
LW	T6,01D4 (A2)
ADDIU	AT,R0,FFFF
ADDIU	T7,R0,0003
BEQ	T6,AT,802C69B0
ADDIU	T8,R0,000A
SB	T7,0185 (A2)
SB	T8,0186 (A2)
SW	A2,0018 (SP)
LW	T9,08B8 (A2)
OR	A0,A2,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
LW	A2,0018 (SP)
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (A2)
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C69F0
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
ADDIU	T6,R0,000B
JAL	8009D1F0	;V0=p->text controller
SB	T6,0186 (S0)
JAL	8009D510
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	T7,R0,0001
JAL	8009D1F0	;V0=p->text controller
SB	T7,0185 (S0)
JAL	8009E9E8
OR	A0,V0,R0	;A0=V0: p->text controller
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C6A74
ADDIU	SP,SP,FFD8
SW	S0,0020 (SP)
OR	S0,A0,R0
SW	RA,0024 (SP)
LW	A0,0174 (S0)
LW	A3,01D4 (S0)
ADDIU	T6,R0,0001
SW	T6,0014 (SP)
SW	R0,0010 (SP)
ADDIU	A1,R0,0001
JAL	800C4DD8
ADDIU	A2,R0,0004
LW	T9,08B8 (S0)
ADDIU	T7,R0,0004
ADDIU	T8,R0,000C
SB	T7,0185 (S0)
SB	T8,0186 (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0002
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
LW	RA,0024 (SP)
LW	S0,0020 (SP)
ADDIU	SP,SP,0028
JR	RA
NOP

802C6AEC
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
OR	A2,A0,R0
LHU	T6,01BC (A2)
LW	V1,01F0 (A2)
OR	A1,R0,R0
BEQ	T6,R0,802C6B84
ADDIU	T1,R0,000D
ADDIU	T7,R0,0007
ADDIU	T8,R0,000D
ADDIU	T9,R0,0002
SW	T7,01A8 (A2)
SB	T8,0186 (A2)
BEQ	V1,R0,802C6B9C
SB	T9,0185 (A2)
LW	T0,017C (A2)
LW	A0,0000 (T0)
BEQL	A0,R0,802C6BA0
SW	A2,0018 (SP)
LW	V0,0030 (V1)
ADDIU	AT,R0,02B8
BEQ	V0,AT,802C6B60
ADDIU	AT,R0,02CA
BEQ	V0,AT,802C6B70
ADDIU	AT,R0,0452
BEQ	V0,AT,802C6B68
NOP
BEQ	R0,R0,802C6B74
NOP
BEQ	R0,R0,802C6B74
ADDIU	A1,R0,FFFB
BEQ	R0,R0,802C6B74
ADDIU	A1,R0,FFFE
ADDIU	A1,R0,FFFF
JAL	800A6DD0
SW	A2,0018 (SP)
BEQ	R0,R0,802C6B9C
LW	A2,0018 (SP)
ADDIU	T2,R0,0499
ADDIU	T3,R0,0009
SW	T1,01A8 (A2)
SW	T2,01A4 (A2)
SB	T3,0186 (A2)
SB	R0,0185 (A2)
SW	A2,0018 (SP)
LW	T9,08B8 (A2)
OR	A0,A2,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
LW	A2,0018 (SP)
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009E658
LW	A1,01A0 (A2)
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009D620
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009E9F8
OR	A0,V0,R0	;A0=V0: p->text controller
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C6BFC
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
ADDIU	T6,R0,0009
SB	T6,0185 (A0)
JAL	802C55F8
SW	A0,0018 (SP)
LW	A0,0018 (SP)
ADDIU	T7,R0,0018
SB	T7,0186 (A0)
LW	RA,0014 (SP)
JR	RA
ADDIU	SP,SP,0018

802C6C2C
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	V0,019C (S0)
BNE	V0,R0,802C6CC4
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009E9E8
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009D510
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	T9,R0,0004
SW	T9,01A8 (S0)
LW	T9,08B8 (S0)
ADDIU	T6,R0,0001
ADDIU	T7,R0,0015
ADDIU	T8,R0,FFFF
SB	T6,0185 (S0)
SB	T7,0186 (S0)
SW	T8,019C (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0002
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
BEQ	R0,R0,802C6CD4
LW	RA,001C (SP)
JAL	802C5A78
OR	A0,S0,R0
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C6CE4
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,019C (S0)
ADDIU	AT,R0,0002
ADDIU	T7,R0,0010
BNE	T6,AT,802C6D18
ADDIU	T8,R0,FFFF
JAL	802C5A14
OR	A0,S0,R0
BEQ	R0,R0,802C6D4C
NOP
ADDIU	T9,R0,0004
SW	T9,01A8 (S0)
LW	T9,08B8 (S0)
SB	T7,0186 (S0)
SW	T8,019C (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0002
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C6D74
ADDIU	SP,SP,FFD0
SW	S0,0020 (SP)
OR	S0,A0,R0
SW	RA,0024 (SP)
LW	T6,0174 (S0)
ADDIU	AT,R0,0002
ADDIU	A1,R0,0001
SW	T6,0028 (SP)
LW	T7,01C0 (S0)
LW	A3,01D4 (S0)
LW	A0,0028 (SP)
SRL	T8,T7,0x1E
BNE	T8,AT,802C6E24
ADDIU	A2,R0,0004
LBU	V0,01C0 (S0)
ADDIU	AT,R0,0004
LW	A0,0028 (SP)
ANDI	V0,V0,003F
BEQ	V0,AT,802C6DD8
ADDIU	A1,R0,0001
ADDIU	AT,R0,0005
BEQ	V0,AT,802C6DEC
LW	A0,0028 (SP)
BEQ	R0,R0,802C6E04
LW	A0,0028 (SP)
ADDIU	A2,R0,0008
JAL	800C4D8C
ADDIU	A3,R0,0001
BEQ	R0,R0,802C6E68
LW	T9,08B8 (S0)
ADDIU	A1,R0,0001
ADDIU	A2,R0,0008
JAL	800C4D8C
ADDIU	A3,R0,0002
BEQ	R0,R0,802C6E68
LW	T9,08B8 (S0)
ADDIU	T9,R0,0001
SW	T9,0014 (SP)	;SP+14=T9: 
ADDIU	A1,R0,0001	;A1=1
ADDIU	A2,R0,0004	;A2=4
JAL	800C4DD8
SW	R0,0010 (SP)	;SP+10=0
BEQ	R0,R0,802C6E68
LW	T9,08B8 (S0)
//802C6E24:	determine if clothes
LHU	V0,01D8 (S0)	;V0=S0+1D8: item ID
ADDIU	AT,R0,0002
ANDI	T0,V0,F000
SRA	T1,T0,0xC
BNE	T1,AT,802C6E54	;branch if not a 2xxx item
ANDI	T2,V0,0F00
SRA	T3,T2,0x8
ADDIU	AT,R0,0004
BNEL	T3,AT,802C6E58	;branch if not a 24xx item--clothes
ADDIU	V0,R0,0001
BEQ	R0,R0,802C6E58	;V0=0 if clothes
OR	V0,R0,R0
//802C6E54:	default not clothes
ADDIU	V0,R0,0001	;V0=1 if not clothes
//802C6E58:
SW	R0,0010 (SP)	;SP+10=0: 
JAL	800C4DD8	;set quest struct
SW	V0,0014 (SP)	;SP+14=V0: item ID
LW	T9,08B8 (S0)
//802C6E68:
ADDIU	T4,R0,0016
ADDIU	T5,R0,0004
SB	T4,0186 (S0)
SB	T5,0185 (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0002
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
LW	RA,0024 (SP)
LW	S0,0020 (SP)
ADDIU	SP,SP,0030
JR	RA
NOP

802C6EAC
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LHU	A2,01BC (S0)
ADDIU	T2,R0,000D
ADDIU	T3,R0,04AB
BEQ	A2,R0,802C6F1C
ADDIU	T4,R0,0018
ADDIU	T6,R0,0004
ADDIU	T7,R0,0017
SW	T6,01A8 (S0)
SB	T7,0186 (S0)
ANDI	A0,A2,FFFF
JAL	800BB6F0
ADDIU	A1,R0,0002
LHU	V0,01D8 (S0)	;V0=S0+1D8: item ID
ADDIU	AT,R0,0002
ANDI	T8,V0,F000
SRA	T9,T8,0xC
BNE	T9,AT,802C6F40	;branch if not a 2xxx item
ANDI	T0,V0,0F00
SRA	T1,T0,0x8
ADDIU	AT,R0,0004
BNE	T1,AT,802C6F40	;branch if not a 24xx item--clothes
LUI	AT,8013
BEQ	R0,R0,802C6F40
SH	V0,740A (AT)	;V0->8013740A: 
LW	T5,017C (S0)
SW	T2,01A8 (S0)
SW	T3,01A4 (S0)
SB	T4,0186 (S0)
LW	A0,0000 (T5)
BEQL	A0,R0,802C6F44
LW	T9,08B8 (S0)
JAL	800A6DD0	;advance through help messages?
ADDIU	A1,R0,FFFF
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009E658	;replace msg_txt with A1
LW	A1,01A0 (S0)	;A1=S0+1A0: msg_txt ID
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009D620
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009E9F8	;0->A0+2D0
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	T6,R0,0002
SB	T6,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C6FA4
ADDIU	T6,R0,0010
ADDIU	T7,R0,0009
SB	T6,0186 (A0)	;10->A0+186: 
SB	T7,0185 (A0)	;9 ->A0+185: 
JR	RA
NOP

802C6FBC
ADDIU	SP,SP,FF98
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,089C (S0)
OR	A0,S0,R0
JAL	802C53D0
SW	T6,005C (SP)
ADDIU	A1,S0,01C0
OR	A0,A1,R0
JAL	802C51F4
SW	A1,0030 (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C7130
LW	A1,0030 (SP)
OR	A0,A1,R0
JAL	802C5034
SW	A1,0030 (SP)
LW	A1,0030 (SP)
ADDIU	T7,R0,000D
SW	T7,01A8 (S0)
LW	T8,005C (SP)
SLL	T9,T8,0x2
SUBU	T9,T9,T8
SLL	T9,T9,0x4
ADDU	A2,S0,T9
LW	V0,0214 (A2)
ADDIU	A2,A2,020C
BEQL	V0,R0,802C70E0
LW	T4,001C (A1)
LW	T0,0000 (V0)
ADDIU	AT,R0,0002
ADDIU	A3,SP,003C
SRL	T1,T0,0x1E
BNE	T1,AT,802C70DC
LUI	T2,802D
ADDIU	T2,T2,79C0
LW	T4,0000 (T2)
SW	T4,0000 (A3)
LW	T3,0004 (T2)
SW	T3,0004 (A3)
LW	T4,0008 (T2)
SW	T4,0008 (A3)
LW	T3,000C (T2)
SW	T3,000C (A3)
LW	T4,0010 (T2)
SW	T4,0010 (A3)
LW	T3,0014 (T2)
SW	T3,0014 (A3)
LW	T4,0018 (T2)
SW	T4,0018 (A3)
LW	V0,0008 (A2)
LBU	A0,0000 (V0)
ANDI	V1,A0,003F
SLTIU	AT,V1,0007
BNE	AT,R0,802C70B4
ANDI	T5,A0,FFC0
ORI	T6,T5,0006
SB	T6,0000 (V0)
LW	T7,0008 (A2)
LBU	V1,0000 (T7)
ANDI	V1,V1,003F
SLL	T8,V1,0x2
LW	T0,001C (A1)
ADDU	T9,A3,T8
LW	V0,0000 (T9)
SLL	T1,T0,0x2
ADDU	T2,V0,T1
LW	T3,0000 (T2)
SW	T3,01A4 (S0)
BEQ	R0,R0,802C70F8
ADDIU	T7,R0,0011
LW	T4,001C (A1)
LUI	T6,802D
SLL	T5,T4,0x2
ADDU	T6,T6,T5
LW	T6,77D4 (T6)
SW	T6,01A4 (S0)
ADDIU	T7,R0,0011
SB	T7,0186 (S0)
SW	A2,002C (SP)
JAL	800D1A9C
ADDIU	A0,R0,012F
LW	T8,017C (S0)
LW	A2,002C (SP)
ADDIU	A1,R0,0003
LW	A0,0000 (T8)
BEQL	A0,R0,802C716C
LW	V0,0008 (A2)
JAL	800A6DD0
SW	A2,002C (SP)
BEQ	R0,R0,802C7168
LW	A2,002C (SP)
ADDIU	T9,R0,000B
SW	T9,01A8 (S0)
LW	T0,005C (SP)
ADDIU	T5,R0,FFFF
SLL	T1,T0,0x2
SUBU	T1,T1,T0
SLL	T1,T1,0x4
ADDU	A2,S0,T1
LW	V0,0214 (A2)
ADDIU	A2,A2,020C
LBU	T3,0001 (V0)
ORI	T4,T3,0004
SB	T4,0001 (V0)
SW	T5,089C (S0)
LW	V0,0008 (A2)
ADDIU	AT,R0,0002
LW	V1,0000 (V0)
SRL	T6,V1,0x1E
BNE	T6,AT,802C71D8
SLL	A3,V1,0x9
SRL	A3,A3,0x1C
BEQ	A3,R0,802C71D0
ADDIU	T7,A3,FFFF
LBU	T0,0001 (V0)
SLL	T8,T7,0x3
ANDI	T9,T8,0078
ANDI	T1,T0,FF87
OR	T2,T9,T1
SB	T2,0001 (V0)
LW	A0,0008 (A2)
SW	A2,002C (SP)
ADDIU	A1,R0,0003
JAL	800D572C
ADDIU	A0,A0,0002
LW	A2,002C (SP)
LUI	A1,8013
LW	A1,6FD8 (A1)
LW	A0,0008 (A2)
JAL	800B79E0
ADDIU	A0,A0,000E
ADDIU	T3,R0,FFFF
SW	T3,089C (S0)
SB	R0,0185 (S0)
JAL	802C55F8
OR	A0,S0,R0
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0068
JR	RA
NOP

802C7220
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T9,08B8 (S0)
ADDIU	T6,R0,0005
SW	T6,01A8 (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0007
LW	T9,08B8 (S0)
SB	R0,0185 (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0002
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C7284
ADDIU	SP,SP,FF98
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,089C (S0)
OR	A0,S0,R0
JAL	802C53D0
SW	T6,005C (SP)
ADDIU	A2,S0,01C0
OR	A0,A2,R0
JAL	802C51F4
SW	A2,0030 (SP)
ADDIU	AT,R0,0001
BNE	V0,AT,802C73DC
LW	A2,0030 (SP)
OR	A0,A2,R0
JAL	802C5034
SW	A2,0030 (SP)
LW	A2,0030 (SP)
ADDIU	T7,R0,000D
SW	T7,01A8 (S0)
LW	T8,005C (SP)
SLL	T9,T8,0x2
SUBU	T9,T9,T8
SLL	T9,T9,0x4
ADDU	V0,S0,T9
LW	T0,0214 (V0)
ADDIU	V1,V0,020C
BEQL	T0,R0,802C73B0
LW	T6,001C (A2)
LW	T1,0008 (V1)
ADDIU	AT,R0,0002
LUI	T4,802D
LW	T2,0000 (T1)
ADDIU	A3,SP,003C
ADDIU	T4,T4,79DC
SRL	T3,T2,0x1E
BNEL	T3,AT,802C73B0
LW	T6,001C (A2)
LW	T6,0000 (T4)
SW	T6,0000 (A3)
LW	T5,0004 (T4)
SW	T5,0004 (A3)
LW	T6,0008 (T4)
SW	T6,0008 (A3)
LW	T5,000C (T4)
SW	T5,000C (A3)
LW	T6,0010 (T4)
SW	T6,0010 (A3)
LW	T5,0014 (T4)
SW	T5,0014 (A3)
LW	T6,0018 (T4)
SW	T6,0018 (A3)
LW	A0,0008 (V1)
LBU	A1,0000 (A0)
ANDI	V0,A1,003F
SLTIU	AT,V0,0007
BNE	AT,R0,802C7384
ANDI	T7,A1,FFC0
ORI	T8,T7,0006
SB	T8,0000 (A0)
LW	T9,0008 (V1)
LBU	V0,0000 (T9)
ANDI	V0,V0,003F
SLL	T0,V0,0x2
LW	T2,001C (A2)
ADDU	T1,A3,T0
LW	V1,0000 (T1)
SLL	T3,T2,0x2
ADDU	T4,V1,T3
LW	T5,0000 (T4)
SW	T5,01A4 (S0)
BEQ	R0,R0,802C73C8
ADDIU	T9,R0,0013
LW	T6,001C (A2)
LUI	T8,802D
SLL	T7,T6,0x2
ADDU	T8,T8,T7
LW	T8,78B4 (T8)
SW	T8,01A4 (S0)
ADDIU	T9,R0,0013
SB	T9,0186 (S0)
JAL	800D1A9C
ADDIU	A0,R0,012F
BEQ	R0,R0,802C73E8
LW	T9,08B8 (S0)
ADDIU	T0,R0,000C
SW	T0,01A8 (S0)
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0068
JR	RA
NOP

802C7424
ADDIU	SP,SP,FFE0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T9,08B8 (S0)
ADDIU	T6,R0,000A
SW	T6,01A8 (S0)
OR	A0,S0,R0
JALR	RA,T9
ADDIU	A1,R0,0007
SB	R0,0185 (S0)
JAL	802C55F8
OR	A0,S0,R0
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0020
JR	RA
NOP

802C7494
ADDIU	SP,SP,FFD8
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,089C (S0)
SLL	T7,T6,0x2
SUBU	T7,T7,T6
SLL	T7,T7,0x4
ADDU	T8,S0,T7
ADDIU	T9,T8,020C
SW	T9,0024 (SP)
LW	T0,019C (S0)
BNE	T0,R0,802C75CC
NOP
JAL	802C5950
NOP
JAL	8009D1F0	;V0=p->text controller
SW	R0,01F8 (S0)
LW	T1,0024 (SP)
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	A1,R0,000C
LW	A2,0008 (T1)
ADDIU	A3,R0,0006
JAL	8009D6D0	;copy A3 bytes from string A2 to slot A1 of table at A0
ADDIU	A2,A2,000E
LW	T2,0024 (SP)
ADDIU	AT,R0,0002
LW	A2,0008 (T2)
LW	T3,0000 (A2)
SRL	T4,T3,0x1E
BNEL	T4,AT,802C7568
LW	T1,0178 (S0)
LBU	T5,0000 (A2)
ADDIU	AT,R0,0006
ADDIU	A0,A2,000E
ANDI	T6,T5,003F
BNE	T6,AT,802C7564
LUI	A1,8013
JAL	800B7A00
LW	A1,6FD8 (A1)
BNE	V0,R0,802C755C
ADDIU	T0,R0,1B05
LW	T8,0178 (S0)
LW	T7,0024 (SP)
LW	T9,0000 (T8)
LW	A0,0008 (T7)
JAL	802C5AF8
LW	A1,0174 (T9)
BEQ	R0,R0,802C7588
SW	V0,01A4 (S0)
BEQ	R0,R0,802C7588
SW	T0,01A4 (S0)
LW	T1,0178 (S0)
OR	A0,A2,R0
LW	T2,0000 (T1)
JAL	802C5AF8
LW	A1,0174 (T2)
SW	V0,01A4 (S0)
SW	R0,01F8 (S0)
JAL	802C55F8
OR	A0,S0,R0
ADDIU	T3,R0,FFFF
JAL	8009D1F0	;V0=p->text controller
SW	T3,019C (S0)
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
BEQ	R0,R0,802C75D8
SB	R0,0185 (S0)
JAL	802C5A78
OR	A0,S0,R0
SB	R0,0185 (S0)
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0028
JR	RA
NOP

802C75EC
ADDIU	SP,SP,FFE8
SW	RA,0014 (SP)
OR	A2,A0,R0
SB	R0,0185 (A2)
SW	A2,0018 (SP)
LW	T9,08B8 (A2)
OR	A0,A2,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
LW	A2,0018 (SP)
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (A2)
LW	RA,0014 (SP)
ADDIU	SP,SP,0018
JR	RA
NOP

802C763C
ADDIU	SP,SP,FFD0
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LW	T6,089C (S0)
SLL	T7,T6,0x2
SUBU	T7,T7,T6
SLL	T7,T7,0x4
ADDU	V0,S0,T7
LW	T8,0214 (V0)
ADDIU	V0,V0,020C
JAL	8009D1F0	;V0=p->text controller
SW	T8,0028 (SP)
LW	A2,0028 (SP)
OR	A0,V0,R0	;A0=V0: p->text controller
ADDIU	A1,R0,000C
ADDIU	A2,A2,000E
SW	A2,0020 (SP)
JAL	8009D6D0	;copy A3 bytes from string A2 to slot A1 of table at A0
ADDIU	A3,R0,0006
LUI	A1,8013
LW	A0,0020 (SP)
JAL	800B7A00
LW	A1,6FD8 (A1)
ADDIU	AT,R0,0001
BNE	V0,AT,802C76B4
ADDIU	T0,R0,1B29
ADDIU	T9,R0,1B17
BEQ	R0,R0,802C76B8
SW	T9,01A4 (S0)
SW	T0,01A4 (S0)
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0002
JALR	RA,T9
NOP
JAL	8009D1F0	;V0=p->text controller
NOP
OR	A0,V0,R0	;A0=V0: p->text controller
JAL	8009DBA4
LW	A1,01A0 (S0)
ADDIU	T1,R0,0018
SB	T1,0186 (S0)
SB	R0,0185 (S0)
SW	R0,01F8 (S0)
JAL	802C55F8
OR	A0,S0,R0
JAL	8009D1F0	;V0=p->text controller
NOP
JAL	8009E9C0
OR	A0,V0,R0	;A0=V0: p->text controller
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0030
JR	RA
NOP

802C771C
ADDIU	SP,SP,FFD8
SW	S0,0018 (SP)
OR	S0,A0,R0
SW	RA,001C (SP)
LBU	T6,0186 (S0)
JAL	80065040
SW	T6,0024 (SP)
JAL	800654FC
OR	A0,V0,R0
JAL	80065040
SW	V0,0020 (SP)
JAL	80065508
OR	A0,V0,R0
LW	T7,0020 (SP)
LUI	AT,802D
OR	A0,S0,R0
SW	T7,019C (S0)
LW	T8,0024 (SP)
SLL	T9,T8,0x2
ADDU	AT,AT,T9
LW	T9,79F8 (AT)
JALR	RA,T9
NOP
LW	T9,08B8 (S0)
OR	A0,S0,R0
ADDIU	A1,R0,0004
JALR	RA,T9
NOP
LBU	T0,08CB (S0)
ADDIU	T1,R0,0001
SLTI	AT,T0,0003
BNEL	AT,R0,802C77A8
LW	RA,001C (SP)
SB	T1,0184 (S0)
//802C77A4:	return
LW	RA,001C (SP)
LW	S0,0018 (SP)
ADDIU	SP,SP,0028
JR	RA
NOP

data segment:	802C77C0	4080
802C77C0	item list	0x2 each entry
	2503, 2504, 2505, 2506, 2507, 2508, 2509, 250A, 250B, 250C
802C77D4
